c/9690: Fail to build binutils-2.12 with gcc-3.2.2

claudio.gabellini@magnetimarelli.com claudio.gabellini@magnetimarelli.com
Thu Feb 13 10:16:00 GMT 2003


>Number:         9690
>Category:       c
>Synopsis:       Fail to build binutils-2.12 with gcc-3.2.2
>Confidential:   no
>Severity:       critical
>Priority:       medium
>Responsible:    unassigned
>State:          open
>Class:          ice-on-legal-code
>Submitter-Id:   net
>Arrival-Date:   Thu Feb 13 10:16:01 UTC 2003
>Closed-Date:
>Last-Modified:
>Originator:     Claudio Gabellini
>Release:        3.2.2
>Organization:
>Environment:
HP-UX horn B.11.00 U 9000/800 593790578 unlimited-user license
host: hppa2.0w-hp-hpux11.00$
build: hppa2.0w-hp-hpux11.00$
target: hppa2.0w-hp-hpux11.00$
configured with: /auto/gabellin/prova/src/gcc-3.2.2/configure --prefix=/auto/gab
ellin/tools --enable-languages=c -v$
>Description:
After issuing the command:
  make -w all install
I've received the message:
/auto/gabellin/prova/src/binutils-2.12/bfd/archive.c: In function `_bfd_write_archive_contents':
/auto/gabellin/prova/src/binutils-2.12/bfd/archive.c:1832: unrecognizable insn:
(insn 1071 1069 1073 (set (reg:SI 1 %r1)
        (plus:SI (reg/f:SI 30 %r30)
            (high:SI (const_int 8448 [0x2100])))) -1 (nil)
    (nil))
/auto/gabellin/prova/src/binutils-2.12/bfd/archive.c:1832: Internal compiler error in extract_insn, at recog.c:2148
Please submit a full bug report,
with preprocessed source if appropriate.
>How-To-Repeat:
gcc -c archive.i
>Fix:

>Release-Note:
>Audit-Trail:
>Unformatted:
----gnatsweb-attachment----
Content-Type: text/plain; name="archive.i"
Content-Disposition: inline; filename="archive.i"

# 1 "/auto/gabellin/prova/src/binutils-2.12/bfd/archive.c"
# 1 "<built-in>"
#define __VERSION__ "3.2.2"
#define __USER_LABEL_PREFIX__ 
#define __REGISTER_PREFIX__ 
#define __HAVE_BUILTIN_SETJMP__ 1
#define __USING_SJLJ_EXCEPTIONS__ 1
#define __SIZE_TYPE__ long unsigned int
#define __PTRDIFF_TYPE__ long int
#define __WCHAR_TYPE__ unsigned int
#define __WINT_TYPE__ unsigned int
#define __STDC__ 1
# 1 "<command line>"
#define __GNUC__ 3
# 1 "<command line>"
#define __GNUC_MINOR__ 2
# 1 "<command line>"
#define __GNUC_PATCHLEVEL__ 2
# 1 "<command line>"
#define __GXX_ABI_VERSION 102
# 1 "<command line>"
#define hppa 1
# 1 "<command line>"
#define hp9000s800 1
# 1 "<command line>"
#define __hp9000s800 1
# 1 "<command line>"
#define hp9k8 1
# 1 "<command line>"
#define PWB 1
# 1 "<command line>"
#define hpux 1
# 1 "<command line>"
#define unix 1
# 1 "<command line>"
#define __hppa__ 1
# 1 "<command line>"
#define __hp9000s800__ 1
# 1 "<command line>"
#define __hp9000s800 1
# 1 "<command line>"
#define __hp9k8__ 1
# 1 "<command line>"
#define __PWB__ 1
# 1 "<command line>"
#define __hpux__ 1
# 1 "<command line>"
#define __unix__ 1
# 1 "<command line>"
#define __hppa 1
# 1 "<command line>"
#define __hp9000s800 1
# 1 "<command line>"
#define __hp9k8 1
# 1 "<command line>"
#define __PWB 1
# 1 "<command line>"
#define __hpux 1
# 1 "<command line>"
#define __unix 1
# 1 "<command line>"
#define __OPTIMIZE__ 1
# 1 "<command line>"
#define __STDC_HOSTED__ 1
# 1 "<command line>"
#define _PA_RISC1_1 1
# 1 "<command line>"
#define __hp9000s700 1
# 1 "<command line>"
#define _HPUX_SOURCE 1
# 1 "<command line>"
#define _HIUX_SOURCE 1
# 1 "<command line>"
#define __STDC_EXT__ 1
# 1 "<command line>"
#define _INCLUDE_LONGLONG 1
# 1 "<command line>"
#define HAVE_CONFIG_H 1
# 1 "<command line>"
#define _GNU_SOURCE 1
# 1 "<command line>"
#define HOST_HPPAHPUX 1
# 1 "/auto/gabellin/prova/src/binutils-2.12/bfd/archive.c"
# 130 "/auto/gabellin/prova/src/binutils-2.12/bfd/archive.c"
# 1 "bfd.h" 1
# 30 "bfd.h"
#define __BFD_H_SEEN__ 





# 1 "/auto/gabellin/prova/src/binutils-2.12/include/ansidecl.h" 1
# 115 "/auto/gabellin/prova/src/binutils-2.12/include/ansidecl.h"
#define _ANSIDECL_H 1
# 136 "/auto/gabellin/prova/src/binutils-2.12/include/ansidecl.h"
#define GCC_VERSION (__GNUC__ * 1000 + __GNUC_MINOR__)







#define ANSI_PROTOTYPES 1
#define PTR void *
#define PTRCONST void *const
#define LONG_DOUBLE long double

#define PARAMS(ARGS) ARGS
#define VPARAMS(ARGS) ARGS
#define VA_START(VA_LIST,VAR) va_start(VA_LIST, VAR)





#define VA_OPEN(AP,VAR) { va_list AP; va_start(AP, VAR); { struct Qdmy
#define VA_CLOSE(AP) } va_end(AP); }
#define VA_FIXEDARG(AP,T,N) struct Qdmy
# 172 "/auto/gabellin/prova/src/binutils-2.12/include/ansidecl.h"
#define inline __inline__







#define CONST const
#define VOLATILE volatile
#define SIGNED signed

#define PROTO(type,name,arglist) type name arglist
#define EXFUN(name,proto) name proto
#define DEFUN(name,arglist,args) name(args)
#define DEFUN_VOID(name) name(void)
#define AND ,
#define DOTS , ...
#define NOARGS void
# 245 "/auto/gabellin/prova/src/binutils-2.12/include/ansidecl.h"
#define ATTRIBUTE_MALLOC __attribute__ ((__malloc__))
# 254 "/auto/gabellin/prova/src/binutils-2.12/include/ansidecl.h"
#define ATTRIBUTE_UNUSED_LABEL ATTRIBUTE_UNUSED






#define ATTRIBUTE_UNUSED __attribute__ ((__unused__))



#define ATTRIBUTE_NORETURN __attribute__ ((__noreturn__))



#define ATTRIBUTE_PRINTF(m,n) __attribute__ ((__format__ (__printf__, m, n)))
#define ATTRIBUTE_PRINTF_1 ATTRIBUTE_PRINTF(1, 2)
#define ATTRIBUTE_PRINTF_2 ATTRIBUTE_PRINTF(2, 3)
#define ATTRIBUTE_PRINTF_3 ATTRIBUTE_PRINTF(3, 4)
#define ATTRIBUTE_PRINTF_4 ATTRIBUTE_PRINTF(4, 5)
#define ATTRIBUTE_PRINTF_5 ATTRIBUTE_PRINTF(5, 6)
# 291 "/auto/gabellin/prova/src/binutils-2.12/include/ansidecl.h"
#define HAVE_LONG_DOUBLE 1
# 37 "bfd.h" 2
# 1 "/auto/gabellin/prova/src/binutils-2.12/include/symcat.h" 1
# 20 "/auto/gabellin/prova/src/binutils-2.12/include/symcat.h"
#define SYM_CAT_H 


#define CONCAT2(a,b) a ##b
#define CONCAT3(a,b,c) a ##b ##c
#define CONCAT4(a,b,c,d) a ##b ##c ##d
#define STRINGX(s) #s
# 38 "/auto/gabellin/prova/src/binutils-2.12/include/symcat.h"
#define XCONCAT2(a,b) CONCAT2(a,b)
#define XCONCAT3(a,b,c) CONCAT3(a,b,c)
#define XCONCAT4(a,b,c,d) CONCAT4(a,b,c,d)






#define XSTRING(s) STRINGX(s)
# 38 "bfd.h" 2







#undef CONCAT4
#define CONCAT4(a,b,c,d) XCONCAT2(CONCAT2(a,b),CONCAT2(c,d))



#define BFD_VERSION 212000000
#define BFD_VERSION_DATE 20020209
#define BFD_VERSION_STRING "2.12"




#define BFD_ARCH_SIZE 64


#define BFD_DEFAULT_TARGET_SIZE 32

#define BFD_HOST_64BIT_LONG 0






#define BFD64 




#define INLINE __inline__






typedef struct _bfd bfd;
# 114 "bfd.h"
typedef enum bfd_boolean {false, true} boolean;
#define BFD_TRUE_FALSE 
# 134 "bfd.h"
#define BFD_HOST_64_BIT long long
#define BFD_HOST_U_64_BIT unsigned long long
# 147 "bfd.h"
typedef unsigned long long bfd_vma;
typedef long long bfd_signed_vma;
typedef unsigned long long bfd_size_type;
typedef unsigned long long symvalue;






#define _bfd_int64_low(x) ((unsigned long) (((x) & 0xffffffff)))
#define _bfd_int64_high(x) ((unsigned long) (((x) >> 32) & 0xffffffff))
#define fprintf_vma(s,x) fprintf ((s), "%08lx%08lx", _bfd_int64_high (x), _bfd_int64_low (x))

#define sprintf_vma(s,x) sprintf ((s), "%08lx%08lx", _bfd_int64_high (x), _bfd_int64_low (x))
# 196 "bfd.h"
typedef bfd_signed_vma file_ptr;
typedef bfd_vma ufile_ptr;

extern void bfd_sprintf_vma (bfd *, char *, bfd_vma);
extern void bfd_fprintf_vma (bfd *, void *, bfd_vma);

#define printf_vma(x) fprintf_vma(stdout,x)
#define bfd_printf_vma(abfd,x) bfd_fprintf_vma (abfd,stdout,x)

typedef unsigned int flagword;
typedef unsigned char bfd_byte;



typedef enum bfd_format
{
  bfd_unknown = 0,
  bfd_object,
  bfd_archive,
  bfd_core,
  bfd_type_end
}
bfd_format;
# 228 "bfd.h"
#define BFD_NO_FLAGS 0x00


#define HAS_RELOC 0x01


#define EXEC_P 0x02



#define HAS_LINENO 0x04


#define HAS_DEBUG 0x08


#define HAS_SYMS 0x10



#define HAS_LOCALS 0x20


#define DYNAMIC 0x40




#define WP_TEXT 0x80



#define D_PAGED 0x100




#define BFD_IS_RELAXABLE 0x200





#define BFD_TRADITIONAL_FORMAT 0x400



#define BFD_IN_MEMORY 0x800




typedef unsigned long symindex;


typedef const struct reloc_howto_struct reloc_howto_type;

#define BFD_NO_MORE_SYMBOLS ((symindex) ~0)




#define bfd_get_section(x) ((x)->section)
#define bfd_get_output_section(x) ((x)->section->output_section)
#define bfd_set_section(x,y) ((x)->section) = (y)
#define bfd_asymbol_base(x) ((x)->section->vma)
#define bfd_asymbol_value(x) (bfd_asymbol_base(x) + (x)->value)
#define bfd_asymbol_name(x) ((x)->name)

#define bfd_asymbol_bfd(x) ((x)->the_bfd)
#define bfd_asymbol_flavour(x) (bfd_asymbol_bfd(x)->xvec->flavour)



typedef struct carsym
{
  char *name;
  file_ptr file_offset;
}
carsym;



struct orl
{
  char **name;
  union
  {
    file_ptr pos;
    bfd *abfd;
  } u;
  int namidx;
};


typedef struct lineno_cache_entry
{
  unsigned int line_number;
  union
  {
    struct symbol_cache_entry *sym;
    bfd_vma offset;
  } u;
}
alent;



#define align_power(addr,align) ( ((addr) + ((1<<(align))-1)) & (-1 << (align)))


typedef struct sec *sec_ptr;

#define bfd_get_section_name(bfd,ptr) ((ptr)->name + 0)
#define bfd_get_section_vma(bfd,ptr) ((ptr)->vma + 0)
#define bfd_get_section_alignment(bfd,ptr) ((ptr)->alignment_power + 0)
#define bfd_section_name(bfd,ptr) ((ptr)->name)
#define bfd_section_size(bfd,ptr) (bfd_get_section_size_before_reloc(ptr))
#define bfd_section_vma(bfd,ptr) ((ptr)->vma)
#define bfd_section_lma(bfd,ptr) ((ptr)->lma)
#define bfd_section_alignment(bfd,ptr) ((ptr)->alignment_power)
#define bfd_get_section_flags(bfd,ptr) ((ptr)->flags + 0)
#define bfd_get_section_userdata(bfd,ptr) ((ptr)->userdata)

#define bfd_is_com_section(ptr) (((ptr)->flags & SEC_IS_COMMON) != 0)

#define bfd_set_section_vma(bfd,ptr,val) (((ptr)->vma = (ptr)->lma= (val)), ((ptr)->user_set_vma = (boolean)true), true)
#define bfd_set_section_alignment(bfd,ptr,val) (((ptr)->alignment_power = (val)),true)
#define bfd_set_section_userdata(bfd,ptr,val) (((ptr)->userdata = (val)),true)

typedef struct stat stat_type;

typedef enum bfd_print_symbol
{
  bfd_print_symbol_name,
  bfd_print_symbol_more,
  bfd_print_symbol_all
} bfd_print_symbol_type;



typedef struct _symbol_info
{
  symvalue value;
  char type;
  const char *name;
  unsigned char stab_type;
  char stab_other;
  short stab_desc;
  const char *stab_name;
} symbol_info;



extern const char *bfd_get_stab_name (int);






struct bfd_hash_entry
{

  struct bfd_hash_entry *next;

  const char *string;


  unsigned long hash;
};



struct bfd_hash_table
{

  struct bfd_hash_entry **table;

  unsigned int size;







  struct bfd_hash_entry *(*newfunc) (struct bfd_hash_entry *, struct bfd_hash_table *, const char *);




  void * memory;
};


extern boolean bfd_hash_table_init
  (struct bfd_hash_table *, struct bfd_hash_entry *(*) (struct bfd_hash_entry *, struct bfd_hash_table *, const char *));





extern boolean bfd_hash_table_init_n
  (struct bfd_hash_table *, struct bfd_hash_entry *(*) (struct bfd_hash_entry *, struct bfd_hash_table *, const char *), unsigned int size);






extern void bfd_hash_table_free (struct bfd_hash_table *);





extern struct bfd_hash_entry *bfd_hash_lookup
  (struct bfd_hash_table *, const char *, boolean create, boolean copy);



extern void bfd_hash_replace
  (struct bfd_hash_table *, struct bfd_hash_entry *old, struct bfd_hash_entry *nw);



extern struct bfd_hash_entry *bfd_hash_newfunc
  (struct bfd_hash_entry *, struct bfd_hash_table *, const char *);



extern void * bfd_hash_allocate (struct bfd_hash_table *, unsigned int);





extern void bfd_hash_traverse (struct bfd_hash_table *, boolean (*) (struct bfd_hash_entry *, void *), void * info);




#define COFF_SWAP_TABLE (PTR) &bfd_coff_std_swap_table






extern bfd_size_type bfd_bread (void *, bfd_size_type, bfd *);
extern bfd_size_type bfd_bwrite (const void *, bfd_size_type, bfd *);
extern int bfd_seek (bfd *, file_ptr, int);
extern ufile_ptr bfd_tell (bfd *);
extern int bfd_flush (bfd *);
extern int bfd_stat (bfd *, struct stat *);



#define bfd_read(BUF,ELTSIZE,NITEMS,ABFD) (warn_deprecated ("bfd_read", __FILE__, __LINE__, __FUNCTION__), bfd_bread ((BUF), (ELTSIZE) * (NITEMS), (ABFD)))


#define bfd_write(BUF,ELTSIZE,NITEMS,ABFD) (warn_deprecated ("bfd_write", __FILE__, __LINE__, __FUNCTION__), bfd_bwrite ((BUF), (ELTSIZE) * (NITEMS), (ABFD)))
# 501 "bfd.h"
extern void warn_deprecated
  (const char *, const char *, int, const char *);



#define bfd_get_filename(abfd) ((char *) (abfd)->filename)
#define bfd_get_cacheable(abfd) ((abfd)->cacheable)
#define bfd_get_format(abfd) ((abfd)->format)
#define bfd_get_target(abfd) ((abfd)->xvec->name)
#define bfd_get_flavour(abfd) ((abfd)->xvec->flavour)
#define bfd_family_coff(abfd) (bfd_get_flavour (abfd) == bfd_target_coff_flavour || bfd_get_flavour (abfd) == bfd_target_xcoff_flavour)


#define bfd_big_endian(abfd) ((abfd)->xvec->byteorder == BFD_ENDIAN_BIG)
#define bfd_little_endian(abfd) ((abfd)->xvec->byteorder == BFD_ENDIAN_LITTLE)
#define bfd_header_big_endian(abfd) ((abfd)->xvec->header_byteorder == BFD_ENDIAN_BIG)

#define bfd_header_little_endian(abfd) ((abfd)->xvec->header_byteorder == BFD_ENDIAN_LITTLE)

#define bfd_get_file_flags(abfd) ((abfd)->flags)
#define bfd_applicable_file_flags(abfd) ((abfd)->xvec->object_flags)
#define bfd_applicable_section_flags(abfd) ((abfd)->xvec->section_flags)
#define bfd_my_archive(abfd) ((abfd)->my_archive)
#define bfd_has_map(abfd) ((abfd)->has_armap)

#define bfd_valid_reloc_types(abfd) ((abfd)->xvec->valid_reloc_types)
#define bfd_usrdata(abfd) ((abfd)->usrdata)

#define bfd_get_start_address(abfd) ((abfd)->start_address)
#define bfd_get_symcount(abfd) ((abfd)->symcount)
#define bfd_get_outsymbols(abfd) ((abfd)->outsymbols)
#define bfd_count_sections(abfd) ((abfd)->section_count)

#define bfd_get_symbol_leading_char(abfd) ((abfd)->xvec->symbol_leading_char)

#define bfd_set_cacheable(abfd,bool) (((abfd)->cacheable = (boolean) (bool)), true)

extern boolean bfd_cache_close (bfd *abfd);


extern boolean bfd_record_phdr
  (bfd *, unsigned long, boolean, flagword, boolean, bfd_vma, boolean, boolean, unsigned int, struct sec **);




bfd_vma bfd_getb64 (const unsigned char *);
bfd_vma bfd_getl64 (const unsigned char *);
bfd_signed_vma bfd_getb_signed_64 (const unsigned char *);
bfd_signed_vma bfd_getl_signed_64 (const unsigned char *);
bfd_vma bfd_getb32 (const unsigned char *);
bfd_vma bfd_getl32 (const unsigned char *);
bfd_signed_vma bfd_getb_signed_32 (const unsigned char *);
bfd_signed_vma bfd_getl_signed_32 (const unsigned char *);
bfd_vma bfd_getb16 (const unsigned char *);
bfd_vma bfd_getl16 (const unsigned char *);
bfd_signed_vma bfd_getb_signed_16 (const unsigned char *);
bfd_signed_vma bfd_getl_signed_16 (const unsigned char *);
void bfd_putb64 (bfd_vma, unsigned char *);
void bfd_putl64 (bfd_vma, unsigned char *);
void bfd_putb32 (bfd_vma, unsigned char *);
void bfd_putl32 (bfd_vma, unsigned char *);
void bfd_putb16 (bfd_vma, unsigned char *);
void bfd_putl16 (bfd_vma, unsigned char *);



bfd_vma bfd_get_bits (bfd_byte *, int, boolean);
void bfd_put_bits (bfd_vma, bfd_byte *, int, boolean);




struct ecoff_debug_info;
struct ecoff_debug_swap;
struct ecoff_extr;
struct symbol_cache_entry;
struct bfd_link_info;
struct bfd_link_hash_entry;
struct bfd_elf_version_tree;

extern bfd_vma bfd_ecoff_get_gp_value (bfd * abfd);
extern boolean bfd_ecoff_set_gp_value (bfd *abfd, bfd_vma gp_value);
extern boolean bfd_ecoff_set_regmasks
  (bfd *abfd, unsigned long gprmask, unsigned long fprmask, unsigned long *cprmask);

extern void * bfd_ecoff_debug_init
  (bfd *output_bfd, struct ecoff_debug_info *output_debug, const struct ecoff_debug_swap *output_swap, struct bfd_link_info *);


extern void bfd_ecoff_debug_free
  (void * handle, bfd *output_bfd, struct ecoff_debug_info *output_debug, const struct ecoff_debug_swap *output_swap, struct bfd_link_info *);


extern boolean bfd_ecoff_debug_accumulate
  (void * handle, bfd *output_bfd, struct ecoff_debug_info *output_debug, const struct ecoff_debug_swap *output_swap, bfd *input_bfd, struct ecoff_debug_info *input_debug, const struct ecoff_debug_swap *input_swap, struct bfd_link_info *);




extern boolean bfd_ecoff_debug_accumulate_other
  (void * handle, bfd *output_bfd, struct ecoff_debug_info *output_debug, const struct ecoff_debug_swap *output_swap, bfd *input_bfd, struct bfd_link_info *);


extern boolean bfd_ecoff_debug_externals
  (bfd *abfd, struct ecoff_debug_info *debug, const struct ecoff_debug_swap *swap, boolean relocateable, boolean (*get_extr) (struct symbol_cache_entry *, struct ecoff_extr *), void (*set_index) (struct symbol_cache_entry *, bfd_size_type));






extern boolean bfd_ecoff_debug_one_external
  (bfd *abfd, struct ecoff_debug_info *debug, const struct ecoff_debug_swap *swap, const char *name, struct ecoff_extr *esym);


extern bfd_size_type bfd_ecoff_debug_size
  (bfd *abfd, struct ecoff_debug_info *debug, const struct ecoff_debug_swap *swap);

extern boolean bfd_ecoff_write_debug
  (bfd *abfd, struct ecoff_debug_info *debug, const struct ecoff_debug_swap *swap, file_ptr where);

extern boolean bfd_ecoff_write_accumulated_debug
  (void * handle, bfd *abfd, struct ecoff_debug_info *debug, const struct ecoff_debug_swap *swap, struct bfd_link_info *info, file_ptr where);


extern boolean bfd_mips_ecoff_create_embedded_relocs
  (bfd *, struct bfd_link_info *, struct sec *, struct sec *, char **);




struct bfd_link_needed_list
{
  struct bfd_link_needed_list *next;
  bfd *by;
  const char *name;
};

extern boolean bfd_elf32_record_link_assignment
  (bfd *, struct bfd_link_info *, const char *, boolean);
extern boolean bfd_elf64_record_link_assignment
  (bfd *, struct bfd_link_info *, const char *, boolean);
extern struct bfd_link_needed_list *bfd_elf_get_needed_list
  (bfd *, struct bfd_link_info *);
extern boolean bfd_elf_get_bfd_needed_list
  (bfd *, struct bfd_link_needed_list **);
extern boolean bfd_elf32_size_dynamic_sections
  (bfd *, const char *, const char *, const char *, const char * const *, struct bfd_link_info *, struct sec **, struct bfd_elf_version_tree *);


extern boolean bfd_elf64_size_dynamic_sections
  (bfd *, const char *, const char *, const char *, const char * const *, struct bfd_link_info *, struct sec **, struct bfd_elf_version_tree *);


extern void bfd_elf_set_dt_needed_name (bfd *, const char *);
extern void bfd_elf_set_dt_needed_soname (bfd *, const char *);
extern const char *bfd_elf_get_dt_soname (bfd *);
extern struct bfd_link_needed_list *bfd_elf_get_runpath_list
  (bfd *, struct bfd_link_info *);
extern boolean bfd_elf32_discard_info
  (bfd *, struct bfd_link_info *);
extern boolean bfd_elf64_discard_info
  (bfd *, struct bfd_link_info *);




extern long bfd_get_elf_phdr_upper_bound (bfd *abfd);
# 678 "bfd.h"
extern int bfd_get_elf_phdrs (bfd *abfd, void *phdrs);


extern int bfd_get_arch_size (bfd *);


extern int bfd_get_sign_extend_vma (bfd *);

extern boolean bfd_m68k_elf32_create_embedded_relocs
  (bfd *, struct bfd_link_info *, struct sec *, struct sec *, char **);

extern boolean bfd_mips_elf32_create_embedded_relocs
  (bfd *, struct bfd_link_info *, struct sec *, struct sec *, char **);




extern struct bfd_link_needed_list *bfd_sunos_get_needed_list
  (bfd *, struct bfd_link_info *);
extern boolean bfd_sunos_record_link_assignment
  (bfd *, struct bfd_link_info *, const char *);
extern boolean bfd_sunos_size_dynamic_sections
  (bfd *, struct bfd_link_info *, struct sec **, struct sec **, struct sec **);




extern boolean bfd_i386linux_size_dynamic_sections
  (bfd *, struct bfd_link_info *);
extern boolean bfd_m68klinux_size_dynamic_sections
  (bfd *, struct bfd_link_info *);
extern boolean bfd_sparclinux_size_dynamic_sections
  (bfd *, struct bfd_link_info *);



struct _bfd_window_internal;
typedef struct _bfd_window_internal bfd_window_internal;

typedef struct _bfd_window
{

  void * data;
  bfd_size_type size;






  struct _bfd_window_internal *i;
}
bfd_window;

extern void bfd_init_window (bfd_window *);
extern void bfd_free_window (bfd_window *);
extern boolean bfd_get_file_window
  (bfd *, file_ptr, bfd_size_type, bfd_window *, boolean);



extern boolean bfd_xcoff_link_record_set
  (bfd *, struct bfd_link_info *, struct bfd_link_hash_entry *, bfd_size_type);

extern boolean bfd_xcoff_import_symbol
  (bfd *, struct bfd_link_info *, struct bfd_link_hash_entry *, bfd_vma, const char *, const char *, const char *, unsigned int);

extern boolean bfd_xcoff_export_symbol
  (bfd *, struct bfd_link_info *, struct bfd_link_hash_entry *);
extern boolean bfd_xcoff_link_count_reloc
  (bfd *, struct bfd_link_info *, const char *);
extern boolean bfd_xcoff_record_link_assignment
  (bfd *, struct bfd_link_info *, const char *);
extern boolean bfd_xcoff_size_dynamic_sections
  (bfd *, struct bfd_link_info *, const char *, const char *, unsigned long, unsigned long, unsigned long, boolean, int, boolean, boolean, struct sec **);


extern boolean bfd_xcoff_link_generate_rtinit
  (bfd *, const char *, const char *);




struct internal_syment;
union internal_auxent;


extern boolean bfd_coff_get_syment
  (bfd *, struct symbol_cache_entry *, struct internal_syment *);

extern boolean bfd_coff_get_auxent
  (bfd *, struct symbol_cache_entry *, int, union internal_auxent *);

extern boolean bfd_coff_set_symbol_class
  (bfd *, struct symbol_cache_entry *, unsigned int);

extern boolean bfd_m68k_coff_create_embedded_relocs
  (bfd *, struct bfd_link_info *, struct sec *, struct sec *, char **);



extern boolean bfd_arm_allocate_interworking_sections
  (struct bfd_link_info *);

extern boolean bfd_arm_process_before_allocation
  (bfd *, struct bfd_link_info *, int);

extern boolean bfd_arm_get_bfd_for_interworking
  (bfd *, struct bfd_link_info *);


extern boolean bfd_arm_pe_allocate_interworking_sections
  (struct bfd_link_info *);

extern boolean bfd_arm_pe_process_before_allocation
  (bfd *, struct bfd_link_info *, int);

extern boolean bfd_arm_pe_get_bfd_for_interworking
  (bfd *, struct bfd_link_info *);


extern boolean bfd_elf32_arm_allocate_interworking_sections
  (struct bfd_link_info *);

extern boolean bfd_elf32_arm_process_before_allocation
  (bfd *, struct bfd_link_info *, int);

extern boolean bfd_elf32_arm_get_bfd_for_interworking
  (bfd *, struct bfd_link_info *);


extern void bfd_ticoff_set_section_load_page
  (struct sec *, int);

extern int bfd_ticoff_get_section_load_page
  (struct sec *);


void
bfd_init (void);

bfd *
bfd_openr (const char *filename, const char *target);

bfd *
bfd_fdopenr (const char *filename, const char *target, int fd);

bfd *
bfd_openstreamr (const char *, const char *, void *);

bfd *
bfd_openw (const char *filename, const char *target);

boolean
bfd_close (bfd *abfd);

boolean
bfd_close_all_done (bfd *);

bfd *
bfd_create (const char *filename, bfd *templ);

boolean
bfd_make_writable (bfd *abfd);

boolean
bfd_make_readable (bfd *abfd);




#define bfd_put_8(abfd,val,ptr) ((void) (*((unsigned char *) (ptr)) = (unsigned char) (val)))

#define bfd_put_signed_8 bfd_put_8

#define bfd_get_8(abfd,ptr) (*(unsigned char *) (ptr) & 0xff)

#define bfd_get_signed_8(abfd,ptr) (((*(unsigned char *) (ptr) & 0xff) ^ 0x80) - 0x80)


#define bfd_put_16(abfd,val,ptr) BFD_SEND(abfd, bfd_putx16, ((val),(ptr)))

#define bfd_put_signed_16 bfd_put_16

#define bfd_get_16(abfd,ptr) BFD_SEND(abfd, bfd_getx16, (ptr))

#define bfd_get_signed_16(abfd,ptr) BFD_SEND (abfd, bfd_getx_signed_16, (ptr))


#define bfd_put_32(abfd,val,ptr) BFD_SEND(abfd, bfd_putx32, ((val),(ptr)))

#define bfd_put_signed_32 bfd_put_32

#define bfd_get_32(abfd,ptr) BFD_SEND(abfd, bfd_getx32, (ptr))

#define bfd_get_signed_32(abfd,ptr) BFD_SEND(abfd, bfd_getx_signed_32, (ptr))


#define bfd_put_64(abfd,val,ptr) BFD_SEND(abfd, bfd_putx64, ((val), (ptr)))

#define bfd_put_signed_64 bfd_put_64

#define bfd_get_64(abfd,ptr) BFD_SEND(abfd, bfd_getx64, (ptr))

#define bfd_get_signed_64(abfd,ptr) BFD_SEND(abfd, bfd_getx_signed_64, (ptr))


#define bfd_get(bits,abfd,ptr) ( (bits) == 8 ? (bfd_vma) bfd_get_8 (abfd, ptr) : (bits) == 16 ? bfd_get_16 (abfd, ptr) : (bits) == 32 ? bfd_get_32 (abfd, ptr) : (bits) == 64 ? bfd_get_64 (abfd, ptr) : (abort (), (bfd_vma) - 1))






#define bfd_put(bits,abfd,val,ptr) ( (bits) == 8 ? bfd_put_8 (abfd, val, ptr) : (bits) == 16 ? bfd_put_16 (abfd, val, ptr) : (bits) == 32 ? bfd_put_32 (abfd, val, ptr) : (bits) == 64 ? bfd_put_64 (abfd, val, ptr) : (abort (), (void) 0))
# 902 "bfd.h"
#define bfd_h_put_8(abfd,val,ptr) bfd_put_8 (abfd, val, ptr)

#define bfd_h_put_signed_8(abfd,val,ptr) bfd_put_8 (abfd, val, ptr)

#define bfd_h_get_8(abfd,ptr) bfd_get_8 (abfd, ptr)

#define bfd_h_get_signed_8(abfd,ptr) bfd_get_signed_8 (abfd, ptr)


#define bfd_h_put_16(abfd,val,ptr) BFD_SEND (abfd, bfd_h_putx16, (val, ptr))

#define bfd_h_put_signed_16 bfd_h_put_16

#define bfd_h_get_16(abfd,ptr) BFD_SEND (abfd, bfd_h_getx16, (ptr))

#define bfd_h_get_signed_16(abfd,ptr) BFD_SEND (abfd, bfd_h_getx_signed_16, (ptr))


#define bfd_h_put_32(abfd,val,ptr) BFD_SEND (abfd, bfd_h_putx32, (val, ptr))

#define bfd_h_put_signed_32 bfd_h_put_32

#define bfd_h_get_32(abfd,ptr) BFD_SEND (abfd, bfd_h_getx32, (ptr))

#define bfd_h_get_signed_32(abfd,ptr) BFD_SEND (abfd, bfd_h_getx_signed_32, (ptr))


#define bfd_h_put_64(abfd,val,ptr) BFD_SEND (abfd, bfd_h_putx64, (val, ptr))

#define bfd_h_put_signed_64 bfd_h_put_64

#define bfd_h_get_64(abfd,ptr) BFD_SEND (abfd, bfd_h_getx64, (ptr))

#define bfd_h_get_signed_64(abfd,ptr) BFD_SEND (abfd, bfd_h_getx_signed_64, (ptr))





#define H_PUT_64(abfd,val,where) bfd_h_put_64 ((abfd), (bfd_vma) (val), (bfd_byte *) (where))


#define H_PUT_32(abfd,val,where) bfd_h_put_32 ((abfd), (bfd_vma) (val), (bfd_byte *) (where))


#define H_PUT_16(abfd,val,where) bfd_h_put_16 ((abfd), (bfd_vma) (val), (bfd_byte *) (where))


#define H_PUT_8 bfd_h_put_8

#define H_PUT_S64(abfd,val,where) bfd_h_put_signed_64 ((abfd), (bfd_vma) (val), (bfd_byte *) (where))


#define H_PUT_S32(abfd,val,where) bfd_h_put_signed_32 ((abfd), (bfd_vma) (val), (bfd_byte *) (where))


#define H_PUT_S16(abfd,val,where) bfd_h_put_signed_16 ((abfd), (bfd_vma) (val), (bfd_byte *) (where))


#define H_PUT_S8 bfd_h_put_signed_8

#define H_GET_64(abfd,where) bfd_h_get_64 ((abfd), (bfd_byte *) (where))


#define H_GET_32(abfd,where) bfd_h_get_32 ((abfd), (bfd_byte *) (where))


#define H_GET_16(abfd,where) bfd_h_get_16 ((abfd), (bfd_byte *) (where))


#define H_GET_8 bfd_h_get_8

#define H_GET_S64(abfd,where) bfd_h_get_signed_64 ((abfd), (bfd_byte *) (where))


#define H_GET_S32(abfd,where) bfd_h_get_signed_32 ((abfd), (bfd_byte *) (where))


#define H_GET_S16(abfd,where) bfd_h_get_signed_16 ((abfd), (bfd_byte *) (where))


#define H_GET_S8 bfd_h_get_signed_8







struct bfd_comdat_info
{

  const char *name;





  long symbol;
};

typedef struct sec
{


  const char *name;


  int id;


  int index;


  struct sec *next;




  flagword flags;

#define SEC_NO_FLAGS 0x000



#define SEC_ALLOC 0x001



#define SEC_LOAD 0x002



#define SEC_RELOC 0x004





#define SEC_ARCH_BIT_0 0x008


#define SEC_READONLY 0x010


#define SEC_CODE 0x020


#define SEC_DATA 0x040


#define SEC_ROM 0x080
# 1065 "bfd.h"
#define SEC_CONSTRUCTOR 0x100



#define SEC_CONSTRUCTOR_TEXT 0x1100
#define SEC_CONSTRUCTOR_DATA 0x2100
#define SEC_CONSTRUCTOR_BSS 0x3100




#define SEC_HAS_CONTENTS 0x200



#define SEC_NEVER_LOAD 0x400
# 1091 "bfd.h"
#define SEC_COFF_SHARED_LIBRARY 0x800







#define SEC_HAS_GOT_REF 0x4000






#define SEC_IS_COMMON 0x8000





#define SEC_DEBUGGING 0x10000




#define SEC_IN_MEMORY 0x20000




#define SEC_EXCLUDE 0x40000





#define SEC_SORT_ENTRIES 0x80000





#define SEC_LINK_ONCE 0x100000



#define SEC_LINK_DUPLICATES 0x600000



#define SEC_LINK_DUPLICATES_DISCARD 0x0




#define SEC_LINK_DUPLICATES_ONE_ONLY 0x200000



#define SEC_LINK_DUPLICATES_SAME_SIZE 0x400000




#define SEC_LINK_DUPLICATES_SAME_CONTENTS 0x600000





#define SEC_LINKER_CREATED 0x800000


#define SEC_KEEP 0x1000000



#define SEC_SMALL_DATA 0x2000000



#define SEC_SHARED 0x4000000





#define SEC_BLOCK 0x8000000



#define SEC_CLINK 0x10000000



#define SEC_MERGE 0x20000000




#define SEC_STRINGS 0x40000000


#define SEC_GROUP 0x80000000






  unsigned int user_set_vma : 1;


  unsigned int reloc_done : 1;


  unsigned int linker_mark : 1;



  unsigned int linker_has_input : 1;


  unsigned int gc_mark : 1;



  unsigned int segment_mark : 1;
# 1229 "bfd.h"
  bfd_vma vma;




  bfd_vma lma;




  bfd_size_type _cooked_size;




  bfd_size_type _raw_size;
# 1253 "bfd.h"
  bfd_vma output_offset;


  struct sec *output_section;



  unsigned int alignment_power;



  struct reloc_cache_entry *relocation;



  struct reloc_cache_entry **orelocation;


  unsigned reloc_count;





  file_ptr filepos;


  file_ptr rel_filepos;


  file_ptr line_filepos;


  void * userdata;



  unsigned char *contents;


  alent *lineno;


  unsigned int lineno_count;


  unsigned int entsize;


  struct bfd_comdat_info *comdat;



  file_ptr moving_line_filepos;


  int target_index;

  void * used_by_bfd;



  struct relent_chain *constructor_chain;


  bfd *owner;


  struct symbol_cache_entry *symbol;
  struct symbol_cache_entry **symbol_ptr_ptr;

  struct bfd_link_order *link_order_head;
  struct bfd_link_order *link_order_tail;
} asection;






#define BFD_ABS_SECTION_NAME "*ABS*"
#define BFD_UND_SECTION_NAME "*UND*"
#define BFD_COM_SECTION_NAME "*COM*"
#define BFD_IND_SECTION_NAME "*IND*"


extern const asection bfd_abs_section;
#define bfd_abs_section_ptr ((asection *) &bfd_abs_section)
#define bfd_is_abs_section(sec) ((sec) == bfd_abs_section_ptr)

extern const asection bfd_und_section;
#define bfd_und_section_ptr ((asection *) &bfd_und_section)
#define bfd_is_und_section(sec) ((sec) == bfd_und_section_ptr)

extern const asection bfd_com_section;
#define bfd_com_section_ptr ((asection *) &bfd_com_section)

extern const asection bfd_ind_section;
#define bfd_ind_section_ptr ((asection *) &bfd_ind_section)
#define bfd_is_ind_section(sec) ((sec) == bfd_ind_section_ptr)

#define bfd_is_const_section(SEC) ( ((SEC) == bfd_abs_section_ptr) || ((SEC) == bfd_und_section_ptr) || ((SEC) == bfd_com_section_ptr) || ((SEC) == bfd_ind_section_ptr))





extern const struct symbol_cache_entry * const bfd_abs_symbol;
extern const struct symbol_cache_entry * const bfd_com_symbol;
extern const struct symbol_cache_entry * const bfd_und_symbol;
extern const struct symbol_cache_entry * const bfd_ind_symbol;
#define bfd_get_section_size_before_reloc(section) ((section)->reloc_done ? (abort (), (bfd_size_type) 1) : (section)->_raw_size)


#define bfd_get_section_size_after_reloc(section) ((section)->reloc_done ? (section)->_cooked_size : (abort (), (bfd_size_type) 1))






#define bfd_section_list_remove(ABFD,PS) do { asection **_ps = PS; asection *_s = *_ps; *_ps = _s->next; if (_s->next == NULL) (ABFD)->section_tail = _ps; } while (0)
# 1384 "bfd.h"
#define bfd_section_list_insert(ABFD,PS,S) do { asection **_ps = PS; asection *_s = S; _s->next = *_ps; *_ps = _s; if (_s->next == NULL) (ABFD)->section_tail = &_s->next; } while (0)
# 1396 "bfd.h"
void
bfd_section_list_clear (bfd *);

asection *
bfd_get_section_by_name (bfd *abfd, const char *name);

char *
bfd_get_unique_section_name (bfd *abfd, const char *templat, int *count);



asection *
bfd_make_section_old_way (bfd *abfd, const char *name);

asection *
bfd_make_section_anyway (bfd *abfd, const char *name);

asection *
bfd_make_section (bfd *, const char *name);

boolean
bfd_set_section_flags (bfd *abfd, asection *sec, flagword flags);

void
bfd_map_over_sections (bfd *abfd, void (*func) (bfd *abfd, asection *sect, void * obj), void * obj);





boolean
bfd_set_section_size (bfd *abfd, asection *sec, bfd_size_type val);

boolean
bfd_set_section_contents (bfd *abfd, asection *section, void * data, file_ptr offset, bfd_size_type count);



boolean
bfd_get_section_contents (bfd *abfd, asection *section, void * location, file_ptr offset, bfd_size_type count);



boolean
bfd_copy_private_section_data (bfd *ibfd, asection *isec, bfd *obfd, asection *osec);


#define bfd_copy_private_section_data(ibfd,isection,obfd,osection) BFD_SEND (obfd, _bfd_copy_private_section_data, (ibfd, isection, obfd, osection))


void
_bfd_strip_section_from_output (struct bfd_link_info *info, asection *section);

enum bfd_architecture
{
  bfd_arch_unknown,
  bfd_arch_obscure,
  bfd_arch_m68k,
#define bfd_mach_m68000 1
#define bfd_mach_m68008 2
#define bfd_mach_m68010 3
#define bfd_mach_m68020 4
#define bfd_mach_m68030 5
#define bfd_mach_m68040 6
#define bfd_mach_m68060 7
#define bfd_mach_cpu32 8
#define bfd_mach_mcf5200 9
#define bfd_mach_mcf5206e 10
#define bfd_mach_mcf5307 11
#define bfd_mach_mcf5407 12
  bfd_arch_vax,
  bfd_arch_i960,
# 1476 "bfd.h"
#define bfd_mach_i960_core 1
#define bfd_mach_i960_ka_sa 2
#define bfd_mach_i960_kb_sb 3
#define bfd_mach_i960_mc 4
#define bfd_mach_i960_xa 5
#define bfd_mach_i960_ca 6
#define bfd_mach_i960_jx 7
#define bfd_mach_i960_hx 8

  bfd_arch_or32,

  bfd_arch_a29k,
  bfd_arch_sparc,
#define bfd_mach_sparc 1

#define bfd_mach_sparc_sparclet 2
#define bfd_mach_sparc_sparclite 3
#define bfd_mach_sparc_v8plus 4
#define bfd_mach_sparc_v8plusa 5
#define bfd_mach_sparc_sparclite_le 6
#define bfd_mach_sparc_v9 7
#define bfd_mach_sparc_v9a 8
#define bfd_mach_sparc_v8plusb 9
#define bfd_mach_sparc_v9b 10

#define bfd_mach_sparc_v9_p(mach) ((mach) >= bfd_mach_sparc_v8plus && (mach) <= bfd_mach_sparc_v9b && (mach) != bfd_mach_sparc_sparclite_le)


  bfd_arch_mips,
#define bfd_mach_mips3000 3000
#define bfd_mach_mips3900 3900
#define bfd_mach_mips4000 4000
#define bfd_mach_mips4010 4010
#define bfd_mach_mips4100 4100
#define bfd_mach_mips4111 4111
#define bfd_mach_mips4300 4300
#define bfd_mach_mips4400 4400
#define bfd_mach_mips4600 4600
#define bfd_mach_mips4650 4650
#define bfd_mach_mips5000 5000
#define bfd_mach_mips6000 6000
#define bfd_mach_mips8000 8000
#define bfd_mach_mips10000 10000
#define bfd_mach_mips12000 12000
#define bfd_mach_mips16 16
#define bfd_mach_mips5 5
#define bfd_mach_mips_sb1 12310201
#define bfd_mach_mipsisa32 32
#define bfd_mach_mipsisa64 64
  bfd_arch_i386,
#define bfd_mach_i386_i386 0
#define bfd_mach_i386_i8086 1
#define bfd_mach_i386_i386_intel_syntax 2
#define bfd_mach_x86_64 3
#define bfd_mach_x86_64_intel_syntax 4
  bfd_arch_we32k,
  bfd_arch_tahoe,
  bfd_arch_i860,
  bfd_arch_i370,
  bfd_arch_romp,
  bfd_arch_alliant,
  bfd_arch_convex,
  bfd_arch_m88k,
  bfd_arch_pyramid,
  bfd_arch_h8300,
#define bfd_mach_h8300 1
#define bfd_mach_h8300h 2
#define bfd_mach_h8300s 3
  bfd_arch_pdp11,
  bfd_arch_powerpc,
#define bfd_mach_ppc 0
#define bfd_mach_ppc64 1
#define bfd_mach_ppc_403 403
#define bfd_mach_ppc_403gc 4030
#define bfd_mach_ppc_505 505
#define bfd_mach_ppc_601 601
#define bfd_mach_ppc_602 602
#define bfd_mach_ppc_603 603
#define bfd_mach_ppc_ec603e 6031
#define bfd_mach_ppc_604 604
#define bfd_mach_ppc_620 620
#define bfd_mach_ppc_630 630
#define bfd_mach_ppc_750 750
#define bfd_mach_ppc_860 860
#define bfd_mach_ppc_a35 35
#define bfd_mach_ppc_rs64ii 642
#define bfd_mach_ppc_rs64iii 643
#define bfd_mach_ppc_7400 7400
  bfd_arch_rs6000,
#define bfd_mach_rs6k 0
#define bfd_mach_rs6k_rs1 6001
#define bfd_mach_rs6k_rsc 6003
#define bfd_mach_rs6k_rs2 6002
  bfd_arch_hppa,
  bfd_arch_d10v,
#define bfd_mach_d10v 0
#define bfd_mach_d10v_ts2 2
#define bfd_mach_d10v_ts3 3
  bfd_arch_d30v,
  bfd_arch_m68hc11,
  bfd_arch_m68hc12,
  bfd_arch_z8k,
#define bfd_mach_z8001 1
#define bfd_mach_z8002 2
  bfd_arch_h8500,
  bfd_arch_sh,
#define bfd_mach_sh 0
#define bfd_mach_sh2 0x20
#define bfd_mach_sh_dsp 0x2d
#define bfd_mach_sh3 0x30
#define bfd_mach_sh3_dsp 0x3d
#define bfd_mach_sh3e 0x3e
#define bfd_mach_sh4 0x40
#define bfd_mach_sh5 0x50
  bfd_arch_alpha,
#define bfd_mach_alpha_ev4 0x10
#define bfd_mach_alpha_ev5 0x20
#define bfd_mach_alpha_ev6 0x30
  bfd_arch_arm,
#define bfd_mach_arm_2 1
#define bfd_mach_arm_2a 2
#define bfd_mach_arm_3 3
#define bfd_mach_arm_3M 4
#define bfd_mach_arm_4 5
#define bfd_mach_arm_4T 6
#define bfd_mach_arm_5 7
#define bfd_mach_arm_5T 8
#define bfd_mach_arm_5TE 9
#define bfd_mach_arm_XScale 10
  bfd_arch_ns32k,
  bfd_arch_w65,
  bfd_arch_tic30,
  bfd_arch_tic54x,
  bfd_arch_tic80,
  bfd_arch_v850,
#define bfd_mach_v850 0
#define bfd_mach_v850e 'E'
#define bfd_mach_v850ea 'A'
  bfd_arch_arc,
#define bfd_mach_arc_5 0
#define bfd_mach_arc_6 1
#define bfd_mach_arc_7 2
#define bfd_mach_arc_8 3
  bfd_arch_m32r,
#define bfd_mach_m32r 0
#define bfd_mach_m32rx 'x'
  bfd_arch_mn10200,
  bfd_arch_mn10300,
#define bfd_mach_mn10300 300
#define bfd_mach_am33 330
  bfd_arch_fr30,
#define bfd_mach_fr30 0x46523330
  bfd_arch_mcore,
  bfd_arch_ia64,
#define bfd_mach_ia64_elf64 0
#define bfd_mach_ia64_elf32 1
  bfd_arch_pj,
  bfd_arch_avr,
#define bfd_mach_avr1 1
#define bfd_mach_avr2 2
#define bfd_mach_avr3 3
#define bfd_mach_avr4 4
#define bfd_mach_avr5 5
  bfd_arch_cris,
  bfd_arch_s390,
#define bfd_mach_s390_esa 0
#define bfd_mach_s390_esame 1
  bfd_arch_openrisc,
  bfd_arch_mmix,
  bfd_arch_xstormy16,
#define bfd_mach_xstormy16 0
  bfd_arch_last
  };

typedef struct bfd_arch_info
{
  int bits_per_word;
  int bits_per_address;
  int bits_per_byte;
  enum bfd_architecture arch;
  unsigned long mach;
  const char *arch_name;
  const char *printable_name;
  unsigned int section_align_power;

  boolean the_default;
  const struct bfd_arch_info * (*compatible)
       (const struct bfd_arch_info *a, const struct bfd_arch_info *b);


  boolean (*scan) (const struct bfd_arch_info *, const char *);

  const struct bfd_arch_info *next;
}
bfd_arch_info_type;

const char *
bfd_printable_name (bfd *abfd);

const bfd_arch_info_type *
bfd_scan_arch (const char *string);

const char **
bfd_arch_list (void);

const bfd_arch_info_type *
bfd_arch_get_compatible ( const bfd *abfd, const bfd *bbfd);



void
bfd_set_arch_info (bfd *abfd, const bfd_arch_info_type *arg);

enum bfd_architecture
bfd_get_arch (bfd *abfd);

unsigned long
bfd_get_mach (bfd *abfd);

unsigned int
bfd_arch_bits_per_byte (bfd *abfd);

unsigned int
bfd_arch_bits_per_address (bfd *abfd);

const bfd_arch_info_type *
bfd_get_arch_info (bfd *abfd);

const bfd_arch_info_type *
bfd_lookup_arch (enum bfd_architecture arch, unsigned long machine);



const char *
bfd_printable_arch_mach (enum bfd_architecture arch, unsigned long machine);

unsigned int
bfd_octets_per_byte (bfd *abfd);

unsigned int
bfd_arch_mach_octets_per_byte (enum bfd_architecture arch, unsigned long machine);


typedef enum bfd_reloc_status
{

  bfd_reloc_ok,


  bfd_reloc_overflow,


  bfd_reloc_outofrange,


  bfd_reloc_continue,


  bfd_reloc_notsupported,


  bfd_reloc_other,


  bfd_reloc_undefined,





  bfd_reloc_dangerous
 }
 bfd_reloc_status_type;


typedef struct reloc_cache_entry
{

  struct symbol_cache_entry **sym_ptr_ptr;


  bfd_size_type address;


  bfd_vma addend;


  reloc_howto_type *howto;

}
arelent;

enum complain_overflow
{

  complain_overflow_dont,



  complain_overflow_bitfield,



  complain_overflow_signed,



  complain_overflow_unsigned
};

struct reloc_howto_struct
{






  unsigned int type;



  unsigned int rightshift;




  int size;



  unsigned int bitsize;





  boolean pc_relative;



  unsigned int bitpos;



  enum complain_overflow complain_on_overflow;





  bfd_reloc_status_type (*special_function)
    (bfd *, arelent *, struct symbol_cache_entry *, void *, asection *, bfd *, char **);



  char *name;
# 1849 "bfd.h"
  boolean partial_inplace;
# 1858 "bfd.h"
  bfd_vma src_mask;





  bfd_vma dst_mask;







  boolean pcrel_offset;
};

#define HOWTO(C,R,S,B,P,BI,O,SF,NAME,INPLACE,MASKSRC,MASKDST,PC) { (unsigned) C, R, S, B, P, BI, O, SF, NAME, INPLACE, MASKSRC, MASKDST, PC }

#define NEWHOWTO(FUNCTION,NAME,SIZE,REL,IN) HOWTO (0, 0, SIZE, 0, REL, 0, complain_overflow_dont, FUNCTION, NAME, false, 0, 0, IN)



#define EMPTY_HOWTO(C) HOWTO ((C), 0, 0, 0, false, 0, complain_overflow_dont, NULL, NULL, false, 0, 0, false)



#define HOWTO_PREPARE(relocation,symbol) { if (symbol != (asymbol *) NULL) { if (bfd_is_com_section (symbol->section)) { relocation = 0; } else { relocation = symbol->value; } } }
# 1900 "bfd.h"
unsigned int
bfd_get_reloc_size (reloc_howto_type *);

typedef struct relent_chain
{
  arelent relent;
  struct relent_chain *next;
}
arelent_chain;

bfd_reloc_status_type
bfd_check_overflow (enum complain_overflow how, unsigned int bitsize, unsigned int rightshift, unsigned int addrsize, bfd_vma relocation);





bfd_reloc_status_type
bfd_perform_relocation (bfd *abfd, arelent *reloc_entry, void * data, asection *input_section, bfd *output_bfd, char **error_message);






bfd_reloc_status_type
bfd_install_relocation (bfd *abfd, arelent *reloc_entry, void * data, bfd_vma data_start, asection *input_section, char **error_message);





enum bfd_reloc_code_real {
  _dummy_first_bfd_reloc_code_real,



  BFD_RELOC_64,
  BFD_RELOC_32,
  BFD_RELOC_26,
  BFD_RELOC_24,
  BFD_RELOC_16,
  BFD_RELOC_14,
  BFD_RELOC_8,






  BFD_RELOC_64_PCREL,
  BFD_RELOC_32_PCREL,
  BFD_RELOC_24_PCREL,
  BFD_RELOC_16_PCREL,
  BFD_RELOC_12_PCREL,
  BFD_RELOC_8_PCREL,


  BFD_RELOC_32_GOT_PCREL,
  BFD_RELOC_16_GOT_PCREL,
  BFD_RELOC_8_GOT_PCREL,
  BFD_RELOC_32_GOTOFF,
  BFD_RELOC_16_GOTOFF,
  BFD_RELOC_LO16_GOTOFF,
  BFD_RELOC_HI16_GOTOFF,
  BFD_RELOC_HI16_S_GOTOFF,
  BFD_RELOC_8_GOTOFF,
  BFD_RELOC_64_PLT_PCREL,
  BFD_RELOC_32_PLT_PCREL,
  BFD_RELOC_24_PLT_PCREL,
  BFD_RELOC_16_PLT_PCREL,
  BFD_RELOC_8_PLT_PCREL,
  BFD_RELOC_64_PLTOFF,
  BFD_RELOC_32_PLTOFF,
  BFD_RELOC_16_PLTOFF,
  BFD_RELOC_LO16_PLTOFF,
  BFD_RELOC_HI16_PLTOFF,
  BFD_RELOC_HI16_S_PLTOFF,
  BFD_RELOC_8_PLTOFF,


  BFD_RELOC_68K_GLOB_DAT,
  BFD_RELOC_68K_JMP_SLOT,
  BFD_RELOC_68K_RELATIVE,


  BFD_RELOC_32_BASEREL,
  BFD_RELOC_16_BASEREL,
  BFD_RELOC_LO16_BASEREL,
  BFD_RELOC_HI16_BASEREL,
  BFD_RELOC_HI16_S_BASEREL,
  BFD_RELOC_8_BASEREL,
  BFD_RELOC_RVA,


  BFD_RELOC_8_FFnn,







  BFD_RELOC_32_PCREL_S2,
  BFD_RELOC_16_PCREL_S2,
  BFD_RELOC_23_PCREL_S2,



  BFD_RELOC_HI22,
  BFD_RELOC_LO10,





  BFD_RELOC_GPREL16,
  BFD_RELOC_GPREL32,


  BFD_RELOC_I960_CALLJ,



  BFD_RELOC_NONE,
  BFD_RELOC_SPARC_WDISP22,
  BFD_RELOC_SPARC22,
  BFD_RELOC_SPARC13,
  BFD_RELOC_SPARC_GOT10,
  BFD_RELOC_SPARC_GOT13,
  BFD_RELOC_SPARC_GOT22,
  BFD_RELOC_SPARC_PC10,
  BFD_RELOC_SPARC_PC22,
  BFD_RELOC_SPARC_WPLT30,
  BFD_RELOC_SPARC_COPY,
  BFD_RELOC_SPARC_GLOB_DAT,
  BFD_RELOC_SPARC_JMP_SLOT,
  BFD_RELOC_SPARC_RELATIVE,
  BFD_RELOC_SPARC_UA16,
  BFD_RELOC_SPARC_UA32,
  BFD_RELOC_SPARC_UA64,


  BFD_RELOC_SPARC_BASE13,
  BFD_RELOC_SPARC_BASE22,


#define BFD_RELOC_SPARC_64 BFD_RELOC_64
  BFD_RELOC_SPARC_10,
  BFD_RELOC_SPARC_11,
  BFD_RELOC_SPARC_OLO10,
  BFD_RELOC_SPARC_HH22,
  BFD_RELOC_SPARC_HM10,
  BFD_RELOC_SPARC_LM22,
  BFD_RELOC_SPARC_PC_HH22,
  BFD_RELOC_SPARC_PC_HM10,
  BFD_RELOC_SPARC_PC_LM22,
  BFD_RELOC_SPARC_WDISP16,
  BFD_RELOC_SPARC_WDISP19,
  BFD_RELOC_SPARC_7,
  BFD_RELOC_SPARC_6,
  BFD_RELOC_SPARC_5,
#define BFD_RELOC_SPARC_DISP64 BFD_RELOC_64_PCREL
  BFD_RELOC_SPARC_PLT32,
  BFD_RELOC_SPARC_PLT64,
  BFD_RELOC_SPARC_HIX22,
  BFD_RELOC_SPARC_LOX10,
  BFD_RELOC_SPARC_H44,
  BFD_RELOC_SPARC_M44,
  BFD_RELOC_SPARC_L44,
  BFD_RELOC_SPARC_REGISTER,


  BFD_RELOC_SPARC_REV32,







  BFD_RELOC_ALPHA_GPDISP_HI16,





  BFD_RELOC_ALPHA_GPDISP_LO16,




  BFD_RELOC_ALPHA_GPDISP,
# 2117 "bfd.h"
  BFD_RELOC_ALPHA_LITERAL,
  BFD_RELOC_ALPHA_ELF_LITERAL,
  BFD_RELOC_ALPHA_LITUSE,




  BFD_RELOC_ALPHA_HINT,



  BFD_RELOC_ALPHA_LINKAGE,



  BFD_RELOC_ALPHA_CODEADDR,



  BFD_RELOC_ALPHA_GPREL_HI16,
  BFD_RELOC_ALPHA_GPREL_LO16,




  BFD_RELOC_ALPHA_BRSGP,



  BFD_RELOC_MIPS_JMP,


  BFD_RELOC_MIPS16_JMP,


  BFD_RELOC_MIPS16_GPREL,


  BFD_RELOC_HI16,





  BFD_RELOC_HI16_S,


  BFD_RELOC_LO16,


  BFD_RELOC_PCREL_HI16_S,


  BFD_RELOC_PCREL_LO16,


  BFD_RELOC_MIPS_LITERAL,


  BFD_RELOC_MIPS_GOT16,
  BFD_RELOC_MIPS_CALL16,
  BFD_RELOC_MIPS_GOT_HI16,
  BFD_RELOC_MIPS_GOT_LO16,
  BFD_RELOC_MIPS_CALL_HI16,
  BFD_RELOC_MIPS_CALL_LO16,
  BFD_RELOC_MIPS_SUB,
  BFD_RELOC_MIPS_GOT_PAGE,
  BFD_RELOC_MIPS_GOT_OFST,
  BFD_RELOC_MIPS_GOT_DISP,
  BFD_RELOC_MIPS_SHIFT5,
  BFD_RELOC_MIPS_SHIFT6,
  BFD_RELOC_MIPS_INSERT_A,
  BFD_RELOC_MIPS_INSERT_B,
  BFD_RELOC_MIPS_DELETE,
  BFD_RELOC_MIPS_HIGHEST,
  BFD_RELOC_MIPS_HIGHER,
  BFD_RELOC_MIPS_SCN_DISP,
  BFD_RELOC_MIPS_REL16,
  BFD_RELOC_MIPS_RELGOT,
  BFD_RELOC_MIPS_JALR,
  BFD_RELOC_SH_GOT_LOW16,
  BFD_RELOC_SH_GOT_MEDLOW16,
  BFD_RELOC_SH_GOT_MEDHI16,
  BFD_RELOC_SH_GOT_HI16,
  BFD_RELOC_SH_GOTPLT_LOW16,
  BFD_RELOC_SH_GOTPLT_MEDLOW16,
  BFD_RELOC_SH_GOTPLT_MEDHI16,
  BFD_RELOC_SH_GOTPLT_HI16,
  BFD_RELOC_SH_PLT_LOW16,
  BFD_RELOC_SH_PLT_MEDLOW16,
  BFD_RELOC_SH_PLT_MEDHI16,
  BFD_RELOC_SH_PLT_HI16,
  BFD_RELOC_SH_GOTOFF_LOW16,
  BFD_RELOC_SH_GOTOFF_MEDLOW16,
  BFD_RELOC_SH_GOTOFF_MEDHI16,
  BFD_RELOC_SH_GOTOFF_HI16,
  BFD_RELOC_SH_GOTPC_LOW16,
  BFD_RELOC_SH_GOTPC_MEDLOW16,
  BFD_RELOC_SH_GOTPC_MEDHI16,
  BFD_RELOC_SH_GOTPC_HI16,
  BFD_RELOC_SH_COPY64,
  BFD_RELOC_SH_GLOB_DAT64,
  BFD_RELOC_SH_JMP_SLOT64,
  BFD_RELOC_SH_RELATIVE64,
  BFD_RELOC_SH_GOT10BY4,
  BFD_RELOC_SH_GOT10BY8,
  BFD_RELOC_SH_GOTPLT10BY4,
  BFD_RELOC_SH_GOTPLT10BY8,
  BFD_RELOC_SH_GOTPLT32,
  BFD_RELOC_SH_SHMEDIA_CODE,
  BFD_RELOC_SH_IMMU5,
  BFD_RELOC_SH_IMMS6,
  BFD_RELOC_SH_IMMS6BY32,
  BFD_RELOC_SH_IMMU6,
  BFD_RELOC_SH_IMMS10,
  BFD_RELOC_SH_IMMS10BY2,
  BFD_RELOC_SH_IMMS10BY4,
  BFD_RELOC_SH_IMMS10BY8,
  BFD_RELOC_SH_IMMS16,
  BFD_RELOC_SH_IMMU16,
  BFD_RELOC_SH_IMM_LOW16,
  BFD_RELOC_SH_IMM_LOW16_PCREL,
  BFD_RELOC_SH_IMM_MEDLOW16,
  BFD_RELOC_SH_IMM_MEDLOW16_PCREL,
  BFD_RELOC_SH_IMM_MEDHI16,
  BFD_RELOC_SH_IMM_MEDHI16_PCREL,
  BFD_RELOC_SH_IMM_HI16,
  BFD_RELOC_SH_IMM_HI16_PCREL,
  BFD_RELOC_SH_PT_16,



  BFD_RELOC_386_GOT32,
  BFD_RELOC_386_PLT32,
  BFD_RELOC_386_COPY,
  BFD_RELOC_386_GLOB_DAT,
  BFD_RELOC_386_JUMP_SLOT,
  BFD_RELOC_386_RELATIVE,
  BFD_RELOC_386_GOTOFF,
  BFD_RELOC_386_GOTPC,


  BFD_RELOC_X86_64_GOT32,
  BFD_RELOC_X86_64_PLT32,
  BFD_RELOC_X86_64_COPY,
  BFD_RELOC_X86_64_GLOB_DAT,
  BFD_RELOC_X86_64_JUMP_SLOT,
  BFD_RELOC_X86_64_RELATIVE,
  BFD_RELOC_X86_64_GOTPCREL,
  BFD_RELOC_X86_64_32S,


  BFD_RELOC_NS32K_IMM_8,
  BFD_RELOC_NS32K_IMM_16,
  BFD_RELOC_NS32K_IMM_32,
  BFD_RELOC_NS32K_IMM_8_PCREL,
  BFD_RELOC_NS32K_IMM_16_PCREL,
  BFD_RELOC_NS32K_IMM_32_PCREL,
  BFD_RELOC_NS32K_DISP_8,
  BFD_RELOC_NS32K_DISP_16,
  BFD_RELOC_NS32K_DISP_32,
  BFD_RELOC_NS32K_DISP_8_PCREL,
  BFD_RELOC_NS32K_DISP_16_PCREL,
  BFD_RELOC_NS32K_DISP_32_PCREL,


  BFD_RELOC_PDP11_DISP_8_PCREL,
  BFD_RELOC_PDP11_DISP_6_PCREL,


  BFD_RELOC_PJ_CODE_HI16,
  BFD_RELOC_PJ_CODE_LO16,
  BFD_RELOC_PJ_CODE_DIR16,
  BFD_RELOC_PJ_CODE_DIR32,
  BFD_RELOC_PJ_CODE_REL16,
  BFD_RELOC_PJ_CODE_REL32,


  BFD_RELOC_PPC_B26,
  BFD_RELOC_PPC_BA26,
  BFD_RELOC_PPC_TOC16,
  BFD_RELOC_PPC_B16,
  BFD_RELOC_PPC_B16_BRTAKEN,
  BFD_RELOC_PPC_B16_BRNTAKEN,
  BFD_RELOC_PPC_BA16,
  BFD_RELOC_PPC_BA16_BRTAKEN,
  BFD_RELOC_PPC_BA16_BRNTAKEN,
  BFD_RELOC_PPC_COPY,
  BFD_RELOC_PPC_GLOB_DAT,
  BFD_RELOC_PPC_JMP_SLOT,
  BFD_RELOC_PPC_RELATIVE,
  BFD_RELOC_PPC_LOCAL24PC,
  BFD_RELOC_PPC_EMB_NADDR32,
  BFD_RELOC_PPC_EMB_NADDR16,
  BFD_RELOC_PPC_EMB_NADDR16_LO,
  BFD_RELOC_PPC_EMB_NADDR16_HI,
  BFD_RELOC_PPC_EMB_NADDR16_HA,
  BFD_RELOC_PPC_EMB_SDAI16,
  BFD_RELOC_PPC_EMB_SDA2I16,
  BFD_RELOC_PPC_EMB_SDA2REL,
  BFD_RELOC_PPC_EMB_SDA21,
  BFD_RELOC_PPC_EMB_MRKREF,
  BFD_RELOC_PPC_EMB_RELSEC16,
  BFD_RELOC_PPC_EMB_RELST_LO,
  BFD_RELOC_PPC_EMB_RELST_HI,
  BFD_RELOC_PPC_EMB_RELST_HA,
  BFD_RELOC_PPC_EMB_BIT_FLD,
  BFD_RELOC_PPC_EMB_RELSDA,
  BFD_RELOC_PPC64_HIGHER,
  BFD_RELOC_PPC64_HIGHER_S,
  BFD_RELOC_PPC64_HIGHEST,
  BFD_RELOC_PPC64_HIGHEST_S,
  BFD_RELOC_PPC64_TOC16_LO,
  BFD_RELOC_PPC64_TOC16_HI,
  BFD_RELOC_PPC64_TOC16_HA,
  BFD_RELOC_PPC64_TOC,
  BFD_RELOC_PPC64_PLTGOT16,
  BFD_RELOC_PPC64_PLTGOT16_LO,
  BFD_RELOC_PPC64_PLTGOT16_HI,
  BFD_RELOC_PPC64_PLTGOT16_HA,
  BFD_RELOC_PPC64_ADDR16_DS,
  BFD_RELOC_PPC64_ADDR16_LO_DS,
  BFD_RELOC_PPC64_GOT16_DS,
  BFD_RELOC_PPC64_GOT16_LO_DS,
  BFD_RELOC_PPC64_PLT16_LO_DS,
  BFD_RELOC_PPC64_SECTOFF_DS,
  BFD_RELOC_PPC64_SECTOFF_LO_DS,
  BFD_RELOC_PPC64_TOC16_DS,
  BFD_RELOC_PPC64_TOC16_LO_DS,
  BFD_RELOC_PPC64_PLTGOT16_DS,
  BFD_RELOC_PPC64_PLTGOT16_LO_DS,


  BFD_RELOC_I370_D12,




  BFD_RELOC_CTOR,



  BFD_RELOC_ARM_PCREL_BRANCH,




  BFD_RELOC_ARM_PCREL_BLX,




  BFD_RELOC_THUMB_PCREL_BLX,



  BFD_RELOC_ARM_IMMEDIATE,
  BFD_RELOC_ARM_ADRL_IMMEDIATE,
  BFD_RELOC_ARM_OFFSET_IMM,
  BFD_RELOC_ARM_SHIFT_IMM,
  BFD_RELOC_ARM_SWI,
  BFD_RELOC_ARM_MULTI,
  BFD_RELOC_ARM_CP_OFF_IMM,
  BFD_RELOC_ARM_ADR_IMM,
  BFD_RELOC_ARM_LDR_IMM,
  BFD_RELOC_ARM_LITERAL,
  BFD_RELOC_ARM_IN_POOL,
  BFD_RELOC_ARM_OFFSET_IMM8,
  BFD_RELOC_ARM_HWLITERAL,
  BFD_RELOC_ARM_THUMB_ADD,
  BFD_RELOC_ARM_THUMB_IMM,
  BFD_RELOC_ARM_THUMB_SHIFT,
  BFD_RELOC_ARM_THUMB_OFFSET,
  BFD_RELOC_ARM_GOT12,
  BFD_RELOC_ARM_GOT32,
  BFD_RELOC_ARM_JUMP_SLOT,
  BFD_RELOC_ARM_COPY,
  BFD_RELOC_ARM_GLOB_DAT,
  BFD_RELOC_ARM_PLT32,
  BFD_RELOC_ARM_RELATIVE,
  BFD_RELOC_ARM_GOTOFF,
  BFD_RELOC_ARM_GOTPC,


  BFD_RELOC_SH_PCDISP8BY2,
  BFD_RELOC_SH_PCDISP12BY2,
  BFD_RELOC_SH_IMM4,
  BFD_RELOC_SH_IMM4BY2,
  BFD_RELOC_SH_IMM4BY4,
  BFD_RELOC_SH_IMM8,
  BFD_RELOC_SH_IMM8BY2,
  BFD_RELOC_SH_IMM8BY4,
  BFD_RELOC_SH_PCRELIMM8BY2,
  BFD_RELOC_SH_PCRELIMM8BY4,
  BFD_RELOC_SH_SWITCH16,
  BFD_RELOC_SH_SWITCH32,
  BFD_RELOC_SH_USES,
  BFD_RELOC_SH_COUNT,
  BFD_RELOC_SH_ALIGN,
  BFD_RELOC_SH_CODE,
  BFD_RELOC_SH_DATA,
  BFD_RELOC_SH_LABEL,
  BFD_RELOC_SH_LOOP_START,
  BFD_RELOC_SH_LOOP_END,
  BFD_RELOC_SH_COPY,
  BFD_RELOC_SH_GLOB_DAT,
  BFD_RELOC_SH_JMP_SLOT,
  BFD_RELOC_SH_RELATIVE,
  BFD_RELOC_SH_GOTPC,



  BFD_RELOC_THUMB_PCREL_BRANCH9,
  BFD_RELOC_THUMB_PCREL_BRANCH12,
  BFD_RELOC_THUMB_PCREL_BRANCH23,





  BFD_RELOC_ARC_B22_PCREL,




  BFD_RELOC_ARC_B26,




  BFD_RELOC_D10V_10_PCREL_R,






  BFD_RELOC_D10V_10_PCREL_L,



  BFD_RELOC_D10V_18,



  BFD_RELOC_D10V_18_PCREL,



  BFD_RELOC_D30V_6,



  BFD_RELOC_D30V_9_PCREL,





  BFD_RELOC_D30V_9_PCREL_R,



  BFD_RELOC_D30V_15,



  BFD_RELOC_D30V_15_PCREL,





  BFD_RELOC_D30V_15_PCREL_R,



  BFD_RELOC_D30V_21,



  BFD_RELOC_D30V_21_PCREL,





  BFD_RELOC_D30V_21_PCREL_R,


  BFD_RELOC_D30V_32,


  BFD_RELOC_D30V_32_PCREL,



  BFD_RELOC_M32R_24,


  BFD_RELOC_M32R_10_PCREL,


  BFD_RELOC_M32R_18_PCREL,


  BFD_RELOC_M32R_26_PCREL,



  BFD_RELOC_M32R_HI16_ULO,



  BFD_RELOC_M32R_HI16_SLO,


  BFD_RELOC_M32R_LO16,



  BFD_RELOC_M32R_SDA16,


  BFD_RELOC_V850_9_PCREL,


  BFD_RELOC_V850_22_PCREL,


  BFD_RELOC_V850_SDA_16_16_OFFSET,



  BFD_RELOC_V850_SDA_15_16_OFFSET,


  BFD_RELOC_V850_ZDA_16_16_OFFSET,



  BFD_RELOC_V850_ZDA_15_16_OFFSET,



  BFD_RELOC_V850_TDA_6_8_OFFSET,



  BFD_RELOC_V850_TDA_7_8_OFFSET,


  BFD_RELOC_V850_TDA_7_7_OFFSET,


  BFD_RELOC_V850_TDA_16_16_OFFSET,



  BFD_RELOC_V850_TDA_4_5_OFFSET,


  BFD_RELOC_V850_TDA_4_4_OFFSET,



  BFD_RELOC_V850_SDA_16_16_SPLIT_OFFSET,



  BFD_RELOC_V850_ZDA_16_16_SPLIT_OFFSET,


  BFD_RELOC_V850_CALLT_6_7_OFFSET,


  BFD_RELOC_V850_CALLT_16_16_OFFSET,




  BFD_RELOC_MN10300_32_PCREL,



  BFD_RELOC_MN10300_16_PCREL,




  BFD_RELOC_TIC30_LDP,




  BFD_RELOC_TIC54X_PARTLS7,




  BFD_RELOC_TIC54X_PARTMS9,


  BFD_RELOC_TIC54X_23,




  BFD_RELOC_TIC54X_16_OF_23,




  BFD_RELOC_TIC54X_MS7_OF_23,


  BFD_RELOC_FR30_48,



  BFD_RELOC_FR30_20,



  BFD_RELOC_FR30_6_IN_4,



  BFD_RELOC_FR30_8_IN_8,



  BFD_RELOC_FR30_9_IN_8,



  BFD_RELOC_FR30_10_IN_8,



  BFD_RELOC_FR30_9_PCREL,



  BFD_RELOC_FR30_12_PCREL,


  BFD_RELOC_MCORE_PCREL_IMM8BY4,
  BFD_RELOC_MCORE_PCREL_IMM11BY2,
  BFD_RELOC_MCORE_PCREL_IMM4BY2,
  BFD_RELOC_MCORE_PCREL_32,
  BFD_RELOC_MCORE_PCREL_JSR_IMM11BY2,
  BFD_RELOC_MCORE_RVA,


  BFD_RELOC_MMIX_GETA,
  BFD_RELOC_MMIX_GETA_1,
  BFD_RELOC_MMIX_GETA_2,
  BFD_RELOC_MMIX_GETA_3,


  BFD_RELOC_MMIX_CBRANCH,
  BFD_RELOC_MMIX_CBRANCH_J,
  BFD_RELOC_MMIX_CBRANCH_1,
  BFD_RELOC_MMIX_CBRANCH_2,
  BFD_RELOC_MMIX_CBRANCH_3,


  BFD_RELOC_MMIX_PUSHJ,
  BFD_RELOC_MMIX_PUSHJ_1,
  BFD_RELOC_MMIX_PUSHJ_2,
  BFD_RELOC_MMIX_PUSHJ_3,


  BFD_RELOC_MMIX_JMP,
  BFD_RELOC_MMIX_JMP_1,
  BFD_RELOC_MMIX_JMP_2,
  BFD_RELOC_MMIX_JMP_3,



  BFD_RELOC_MMIX_ADDR19,


  BFD_RELOC_MMIX_ADDR27,



  BFD_RELOC_MMIX_REG_OR_BYTE,



  BFD_RELOC_MMIX_REG,



  BFD_RELOC_MMIX_BASE_PLUS_OFFSET,



  BFD_RELOC_MMIX_LOCAL,



  BFD_RELOC_AVR_7_PCREL,



  BFD_RELOC_AVR_13_PCREL,



  BFD_RELOC_AVR_16_PM,



  BFD_RELOC_AVR_LO8_LDI,



  BFD_RELOC_AVR_HI8_LDI,



  BFD_RELOC_AVR_HH8_LDI,



  BFD_RELOC_AVR_LO8_LDI_NEG,




  BFD_RELOC_AVR_HI8_LDI_NEG,




  BFD_RELOC_AVR_HH8_LDI_NEG,



  BFD_RELOC_AVR_LO8_LDI_PM,



  BFD_RELOC_AVR_HI8_LDI_PM,



  BFD_RELOC_AVR_HH8_LDI_PM,



  BFD_RELOC_AVR_LO8_LDI_PM_NEG,




  BFD_RELOC_AVR_HI8_LDI_PM_NEG,




  BFD_RELOC_AVR_HH8_LDI_PM_NEG,



  BFD_RELOC_AVR_CALL,


  BFD_RELOC_390_12,


  BFD_RELOC_390_GOT12,


  BFD_RELOC_390_PLT32,


  BFD_RELOC_390_COPY,


  BFD_RELOC_390_GLOB_DAT,


  BFD_RELOC_390_JMP_SLOT,


  BFD_RELOC_390_RELATIVE,


  BFD_RELOC_390_GOTPC,


  BFD_RELOC_390_GOT16,


  BFD_RELOC_390_PC16DBL,


  BFD_RELOC_390_PLT16DBL,


  BFD_RELOC_390_PC32DBL,


  BFD_RELOC_390_PLT32DBL,


  BFD_RELOC_390_GOTPCDBL,


  BFD_RELOC_390_GOT64,


  BFD_RELOC_390_PLT64,


  BFD_RELOC_390_GOTENT,
# 2855 "bfd.h"
  BFD_RELOC_VTABLE_INHERIT,
  BFD_RELOC_VTABLE_ENTRY,


  BFD_RELOC_IA64_IMM14,
  BFD_RELOC_IA64_IMM22,
  BFD_RELOC_IA64_IMM64,
  BFD_RELOC_IA64_DIR32MSB,
  BFD_RELOC_IA64_DIR32LSB,
  BFD_RELOC_IA64_DIR64MSB,
  BFD_RELOC_IA64_DIR64LSB,
  BFD_RELOC_IA64_GPREL22,
  BFD_RELOC_IA64_GPREL64I,
  BFD_RELOC_IA64_GPREL32MSB,
  BFD_RELOC_IA64_GPREL32LSB,
  BFD_RELOC_IA64_GPREL64MSB,
  BFD_RELOC_IA64_GPREL64LSB,
  BFD_RELOC_IA64_LTOFF22,
  BFD_RELOC_IA64_LTOFF64I,
  BFD_RELOC_IA64_PLTOFF22,
  BFD_RELOC_IA64_PLTOFF64I,
  BFD_RELOC_IA64_PLTOFF64MSB,
  BFD_RELOC_IA64_PLTOFF64LSB,
  BFD_RELOC_IA64_FPTR64I,
  BFD_RELOC_IA64_FPTR32MSB,
  BFD_RELOC_IA64_FPTR32LSB,
  BFD_RELOC_IA64_FPTR64MSB,
  BFD_RELOC_IA64_FPTR64LSB,
  BFD_RELOC_IA64_PCREL21B,
  BFD_RELOC_IA64_PCREL21BI,
  BFD_RELOC_IA64_PCREL21M,
  BFD_RELOC_IA64_PCREL21F,
  BFD_RELOC_IA64_PCREL22,
  BFD_RELOC_IA64_PCREL60B,
  BFD_RELOC_IA64_PCREL64I,
  BFD_RELOC_IA64_PCREL32MSB,
  BFD_RELOC_IA64_PCREL32LSB,
  BFD_RELOC_IA64_PCREL64MSB,
  BFD_RELOC_IA64_PCREL64LSB,
  BFD_RELOC_IA64_LTOFF_FPTR22,
  BFD_RELOC_IA64_LTOFF_FPTR64I,
  BFD_RELOC_IA64_LTOFF_FPTR32MSB,
  BFD_RELOC_IA64_LTOFF_FPTR32LSB,
  BFD_RELOC_IA64_LTOFF_FPTR64MSB,
  BFD_RELOC_IA64_LTOFF_FPTR64LSB,
  BFD_RELOC_IA64_SEGREL32MSB,
  BFD_RELOC_IA64_SEGREL32LSB,
  BFD_RELOC_IA64_SEGREL64MSB,
  BFD_RELOC_IA64_SEGREL64LSB,
  BFD_RELOC_IA64_SECREL32MSB,
  BFD_RELOC_IA64_SECREL32LSB,
  BFD_RELOC_IA64_SECREL64MSB,
  BFD_RELOC_IA64_SECREL64LSB,
  BFD_RELOC_IA64_REL32MSB,
  BFD_RELOC_IA64_REL32LSB,
  BFD_RELOC_IA64_REL64MSB,
  BFD_RELOC_IA64_REL64LSB,
  BFD_RELOC_IA64_LTV32MSB,
  BFD_RELOC_IA64_LTV32LSB,
  BFD_RELOC_IA64_LTV64MSB,
  BFD_RELOC_IA64_LTV64LSB,
  BFD_RELOC_IA64_IPLTMSB,
  BFD_RELOC_IA64_IPLTLSB,
  BFD_RELOC_IA64_COPY,
  BFD_RELOC_IA64_TPREL22,
  BFD_RELOC_IA64_TPREL64MSB,
  BFD_RELOC_IA64_TPREL64LSB,
  BFD_RELOC_IA64_LTOFF_TP22,
  BFD_RELOC_IA64_LTOFF22X,
  BFD_RELOC_IA64_LDXMOV,



  BFD_RELOC_M68HC11_HI8,



  BFD_RELOC_M68HC11_LO8,



  BFD_RELOC_M68HC11_3B,



  BFD_RELOC_CRIS_BDISP8,
  BFD_RELOC_CRIS_UNSIGNED_5,
  BFD_RELOC_CRIS_SIGNED_6,
  BFD_RELOC_CRIS_UNSIGNED_6,
  BFD_RELOC_CRIS_UNSIGNED_4,


  BFD_RELOC_CRIS_COPY,
  BFD_RELOC_CRIS_GLOB_DAT,
  BFD_RELOC_CRIS_JUMP_SLOT,
  BFD_RELOC_CRIS_RELATIVE,


  BFD_RELOC_CRIS_32_GOT,


  BFD_RELOC_CRIS_16_GOT,


  BFD_RELOC_CRIS_32_GOTPLT,


  BFD_RELOC_CRIS_16_GOTPLT,


  BFD_RELOC_CRIS_32_GOTREL,


  BFD_RELOC_CRIS_32_PLT_GOTREL,


  BFD_RELOC_CRIS_32_PLT_PCREL,


  BFD_RELOC_860_COPY,
  BFD_RELOC_860_GLOB_DAT,
  BFD_RELOC_860_JUMP_SLOT,
  BFD_RELOC_860_RELATIVE,
  BFD_RELOC_860_PC26,
  BFD_RELOC_860_PLT26,
  BFD_RELOC_860_PC16,
  BFD_RELOC_860_LOW0,
  BFD_RELOC_860_SPLIT0,
  BFD_RELOC_860_LOW1,
  BFD_RELOC_860_SPLIT1,
  BFD_RELOC_860_LOW2,
  BFD_RELOC_860_SPLIT2,
  BFD_RELOC_860_LOW3,
  BFD_RELOC_860_LOGOT0,
  BFD_RELOC_860_SPGOT0,
  BFD_RELOC_860_LOGOT1,
  BFD_RELOC_860_SPGOT1,
  BFD_RELOC_860_LOGOTOFF0,
  BFD_RELOC_860_SPGOTOFF0,
  BFD_RELOC_860_LOGOTOFF1,
  BFD_RELOC_860_SPGOTOFF1,
  BFD_RELOC_860_LOGOTOFF2,
  BFD_RELOC_860_LOGOTOFF3,
  BFD_RELOC_860_LOPC,
  BFD_RELOC_860_HIGHADJ,
  BFD_RELOC_860_HAGOT,
  BFD_RELOC_860_HAGOTOFF,
  BFD_RELOC_860_HAPC,
  BFD_RELOC_860_HIGH,
  BFD_RELOC_860_HIGOT,
  BFD_RELOC_860_HIGOTOFF,


  BFD_RELOC_OPENRISC_ABS_26,
  BFD_RELOC_OPENRISC_REL_26,


  BFD_RELOC_H8_DIR16A8,
  BFD_RELOC_H8_DIR16R8,
  BFD_RELOC_H8_DIR24A8,
  BFD_RELOC_H8_DIR24R8,
  BFD_RELOC_H8_DIR32A16,


  BFD_RELOC_XSTORMY16_REL_12,
  BFD_RELOC_XSTORMY16_24,
  BFD_RELOC_XSTORMY16_FPTR16,
  BFD_RELOC_UNUSED };
typedef enum bfd_reloc_code_real bfd_reloc_code_real_type;
reloc_howto_type *
bfd_reloc_type_lookup (bfd *abfd, bfd_reloc_code_real_type code);

const char *
bfd_get_reloc_code_name (bfd_reloc_code_real_type code);


typedef struct symbol_cache_entry
{
# 3042 "bfd.h"
  struct _bfd *the_bfd;



  const char *name;




  symvalue value;


#define BSF_NO_FLAGS 0x00



#define BSF_LOCAL 0x01



#define BSF_GLOBAL 0x02



#define BSF_EXPORT BSF_GLOBAL







#define BSF_DEBUGGING 0x08



#define BSF_FUNCTION 0x10


#define BSF_KEEP 0x20
#define BSF_KEEP_G 0x40



#define BSF_WEAK 0x80



#define BSF_SECTION_SYM 0x100



#define BSF_OLD_COMMON 0x200


#define BFD_FORT_COMM_DEFAULT_VALUE 0






#define BSF_NOT_AT_END 0x400


#define BSF_CONSTRUCTOR 0x800





#define BSF_WARNING 0x1000



#define BSF_INDIRECT 0x2000



#define BSF_FILE 0x4000


#define BSF_DYNAMIC 0x8000



#define BSF_OBJECT 0x10000




#define BSF_DEBUGGING_RELOC 0x20000

  flagword flags;




  struct sec *section;


  union
    {
      void * p;
      bfd_vma i;
    }
  udata;
}
asymbol;

#define bfd_get_symtab_upper_bound(abfd) BFD_SEND (abfd, _bfd_get_symtab_upper_bound, (abfd))


boolean
bfd_is_local_label (bfd *abfd, asymbol *sym);

boolean
bfd_is_local_label_name (bfd *abfd, const char *name);

#define bfd_is_local_label_name(abfd,name) BFD_SEND (abfd, _bfd_is_local_label_name, (abfd, name))


#define bfd_canonicalize_symtab(abfd,location) BFD_SEND (abfd, _bfd_canonicalize_symtab, (abfd, location))



boolean
bfd_set_symtab (bfd *abfd, asymbol **location, unsigned int count);

void
bfd_print_symbol_vandf (bfd *abfd, void * file, asymbol *symbol);

#define bfd_make_empty_symbol(abfd) BFD_SEND (abfd, _bfd_make_empty_symbol, (abfd))


asymbol *
_bfd_generic_make_empty_symbol (bfd *);

#define bfd_make_debug_symbol(abfd,ptr,size) BFD_SEND (abfd, _bfd_make_debug_symbol, (abfd, ptr, size))


int
bfd_decode_symclass (asymbol *symbol);

boolean
bfd_is_undefined_symclass (int symclass);

void
bfd_symbol_info (asymbol *symbol, symbol_info *ret);

boolean
bfd_copy_private_symbol_data (bfd *ibfd, asymbol *isym, bfd *obfd, asymbol *osym);

#define bfd_copy_private_symbol_data(ibfd,isymbol,obfd,osymbol) BFD_SEND (obfd, _bfd_copy_private_symbol_data, (ibfd, isymbol, obfd, osymbol))



struct _bfd
{

  const char *filename;


  const struct bfd_target *xvec;
# 3214 "bfd.h"
  void * iostream;



  boolean cacheable;




  boolean target_defaulted;



  struct _bfd *lru_prev, *lru_next;



  ufile_ptr where;


  boolean opened_once;



  boolean mtime_set;


  long mtime;


  int ifd;


  bfd_format format;


  enum bfd_direction
    {
      no_direction = 0,
      read_direction = 1,
      write_direction = 2,
      both_direction = 3
    }
  direction;


  flagword flags;




  ufile_ptr origin;



  boolean output_has_begun;


  struct bfd_hash_table section_htab;


  struct sec *sections;


  struct sec **section_tail;


  unsigned int section_count;



  bfd_vma start_address;


  unsigned int symcount;


  struct symbol_cache_entry **outsymbols;


  const struct bfd_arch_info *arch_info;


  void * arelt_data;
  struct _bfd *my_archive;
  struct _bfd *next;
  struct _bfd *archive_head;
  boolean has_armap;


  struct _bfd *link_next;



  int archive_pass;


  union
    {
      struct aout_data_struct *aout_data;
      struct artdata *aout_ar_data;
      struct _oasys_data *oasys_obj_data;
      struct _oasys_ar_data *oasys_ar_data;
      struct coff_tdata *coff_obj_data;
      struct pe_tdata *pe_obj_data;
      struct xcoff_tdata *xcoff_obj_data;
      struct ecoff_tdata *ecoff_obj_data;
      struct ieee_data_struct *ieee_data;
      struct ieee_ar_data_struct *ieee_ar_data;
      struct srec_data_struct *srec_data;
      struct ihex_data_struct *ihex_data;
      struct tekhex_data_struct *tekhex_data;
      struct elf_obj_tdata *elf_obj_data;
      struct nlm_obj_tdata *nlm_obj_data;
      struct bout_data_struct *bout_data;
      struct mmo_data_struct *mmo_data;
      struct sun_core_struct *sun_core_data;
      struct sco5_core_struct *sco5_core_data;
      struct trad_core_struct *trad_core_data;
      struct som_data_struct *som_data;
      struct hpux_core_struct *hpux_core_data;
      struct hppabsd_core_struct *hppabsd_core_data;
      struct sgi_core_struct *sgi_core_data;
      struct lynx_core_struct *lynx_core_data;
      struct osf_core_struct *osf_core_data;
      struct cisco_core_struct *cisco_core_data;
      struct versados_data_struct *versados_data;
      struct netbsd_core_struct *netbsd_core_data;
      void * any;
    }
  tdata;


  void * usrdata;




  void * memory;
};

typedef enum bfd_error
{
  bfd_error_no_error = 0,
  bfd_error_system_call,
  bfd_error_invalid_target,
  bfd_error_wrong_format,
  bfd_error_wrong_object_format,
  bfd_error_invalid_operation,
  bfd_error_no_memory,
  bfd_error_no_symbols,
  bfd_error_no_armap,
  bfd_error_no_more_archived_files,
  bfd_error_malformed_archive,
  bfd_error_file_not_recognized,
  bfd_error_file_ambiguously_recognized,
  bfd_error_no_contents,
  bfd_error_nonrepresentable_section,
  bfd_error_no_debug_section,
  bfd_error_bad_value,
  bfd_error_file_truncated,
  bfd_error_file_too_big,
  bfd_error_invalid_error_code
}
bfd_error_type;

bfd_error_type
bfd_get_error (void);

void
bfd_set_error (bfd_error_type error_tag);

const char *
bfd_errmsg (bfd_error_type error_tag);

void
bfd_perror (const char *message);

typedef void (*bfd_error_handler_type) (const char *, ...);

bfd_error_handler_type
bfd_set_error_handler (bfd_error_handler_type);

void
bfd_set_error_program_name (const char *);

bfd_error_handler_type
bfd_get_error_handler (void);

const char *
bfd_archive_filename (bfd *);

long
bfd_get_reloc_upper_bound (bfd *abfd, asection *sect);

long
bfd_canonicalize_reloc (bfd *abfd, asection *sec, arelent **loc, asymbol **syms);




void
bfd_set_reloc (bfd *abfd, asection *sec, arelent **rel, unsigned int count);

boolean
bfd_set_file_flags (bfd *abfd, flagword flags);

int
bfd_get_arch_size (bfd *abfd);

int
bfd_get_sign_extend_vma (bfd *abfd);

boolean
bfd_set_start_address (bfd *abfd, bfd_vma vma);

long
bfd_get_mtime (bfd *abfd);

long
bfd_get_size (bfd *abfd);

unsigned int
bfd_get_gp_size (bfd *abfd);

void
bfd_set_gp_size (bfd *abfd, unsigned int i);

bfd_vma
bfd_scan_vma (const char *string, const char **end, int base);

boolean
bfd_copy_private_bfd_data (bfd *ibfd, bfd *obfd);

#define bfd_copy_private_bfd_data(ibfd,obfd) BFD_SEND (obfd, _bfd_copy_private_bfd_data, (ibfd, obfd))


boolean
bfd_merge_private_bfd_data (bfd *ibfd, bfd *obfd);

#define bfd_merge_private_bfd_data(ibfd,obfd) BFD_SEND (obfd, _bfd_merge_private_bfd_data, (ibfd, obfd))


boolean
bfd_set_private_flags (bfd *abfd, flagword flags);

#define bfd_set_private_flags(abfd,flags) BFD_SEND (abfd, _bfd_set_private_flags, (abfd, flags))


#define bfd_sizeof_headers(abfd,reloc) BFD_SEND (abfd, _bfd_sizeof_headers, (abfd, reloc))


#define bfd_find_nearest_line(abfd,sec,syms,off,file,func,line) BFD_SEND (abfd, _bfd_find_nearest_line, (abfd, sec, syms, off, file, func, line))



#define bfd_debug_info_start(abfd) BFD_SEND (abfd, _bfd_debug_info_start, (abfd))


#define bfd_debug_info_end(abfd) BFD_SEND (abfd, _bfd_debug_info_end, (abfd))


#define bfd_debug_info_accumulate(abfd,section) BFD_SEND (abfd, _bfd_debug_info_accumulate, (abfd, section))



#define bfd_stat_arch_elt(abfd,stat) BFD_SEND (abfd, _bfd_stat_arch_elt,(abfd, stat))


#define bfd_update_armap_timestamp(abfd) BFD_SEND (abfd, _bfd_update_armap_timestamp, (abfd))


#define bfd_set_arch_mach(abfd,arch,mach) BFD_SEND ( abfd, _bfd_set_arch_mach, (abfd, arch, mach))


#define bfd_relax_section(abfd,section,link_info,again) BFD_SEND (abfd, _bfd_relax_section, (abfd, section, link_info, again))


#define bfd_gc_sections(abfd,link_info) BFD_SEND (abfd, _bfd_gc_sections, (abfd, link_info))


#define bfd_merge_sections(abfd,link_info) BFD_SEND (abfd, _bfd_merge_sections, (abfd, link_info))


#define bfd_link_hash_table_create(abfd) BFD_SEND (abfd, _bfd_link_hash_table_create, (abfd))


#define bfd_link_add_symbols(abfd,info) BFD_SEND (abfd, _bfd_link_add_symbols, (abfd, info))


#define bfd_final_link(abfd,info) BFD_SEND (abfd, _bfd_final_link, (abfd, info))


#define bfd_free_cached_info(abfd) BFD_SEND (abfd, _bfd_free_cached_info, (abfd))


#define bfd_get_dynamic_symtab_upper_bound(abfd) BFD_SEND (abfd, _bfd_get_dynamic_symtab_upper_bound, (abfd))


#define bfd_print_private_bfd_data(abfd,file) BFD_SEND (abfd, _bfd_print_private_bfd_data, (abfd, file))


#define bfd_canonicalize_dynamic_symtab(abfd,asymbols) BFD_SEND (abfd, _bfd_canonicalize_dynamic_symtab, (abfd, asymbols))


#define bfd_get_dynamic_reloc_upper_bound(abfd) BFD_SEND (abfd, _bfd_get_dynamic_reloc_upper_bound, (abfd))


#define bfd_canonicalize_dynamic_reloc(abfd,arels,asyms) BFD_SEND (abfd, _bfd_canonicalize_dynamic_reloc, (abfd, arels, asyms))


extern bfd_byte *bfd_get_relocated_section_contents
       (bfd *, struct bfd_link_info *, struct bfd_link_order *, bfd_byte *, boolean, asymbol **);



boolean
bfd_alt_mach_code (bfd *abfd, int index);

symindex
bfd_get_next_mapent (bfd *abfd, symindex previous, carsym **sym);

boolean
bfd_set_archive_head (bfd *output, bfd *new_head);

bfd *
bfd_openr_next_archived_file (bfd *archive, bfd *previous);

const char *
bfd_core_file_failing_command (bfd *abfd);

int
bfd_core_file_failing_signal (bfd *abfd);

boolean
core_file_matches_executable_p (bfd *core_bfd, bfd *exec_bfd);

#define BFD_SEND(bfd,message,arglist) ((*((bfd)->xvec->message)) arglist)
# 3561 "bfd.h"
#define BFD_SEND_FMT(bfd,message,arglist) (((bfd)->xvec->message[(int) ((bfd)->format)]) arglist)
# 3572 "bfd.h"
enum bfd_flavour
{
  bfd_target_unknown_flavour,
  bfd_target_aout_flavour,
  bfd_target_coff_flavour,
  bfd_target_ecoff_flavour,
  bfd_target_xcoff_flavour,
  bfd_target_elf_flavour,
  bfd_target_ieee_flavour,
  bfd_target_nlm_flavour,
  bfd_target_oasys_flavour,
  bfd_target_tekhex_flavour,
  bfd_target_srec_flavour,
  bfd_target_ihex_flavour,
  bfd_target_som_flavour,
  bfd_target_os9k_flavour,
  bfd_target_versados_flavour,
  bfd_target_msdos_flavour,
  bfd_target_ovax_flavour,
  bfd_target_evax_flavour,
  bfd_target_mmo_flavour
};

enum bfd_endian { BFD_ENDIAN_BIG, BFD_ENDIAN_LITTLE, BFD_ENDIAN_UNKNOWN };


typedef struct bfd_link_info _bfd_link_info;

typedef struct bfd_target
{

  char *name;



  enum bfd_flavour flavour;


  enum bfd_endian byteorder;


  enum bfd_endian header_byteorder;



  flagword object_flags;



  flagword section_flags;



  char symbol_leading_char;


  char ar_pad_char;


  unsigned short ar_max_namelen;




  bfd_vma (*bfd_getx64) (const bfd_byte *);
  bfd_signed_vma (*bfd_getx_signed_64) (const bfd_byte *);
  void (*bfd_putx64) (bfd_vma, bfd_byte *);
  bfd_vma (*bfd_getx32) (const bfd_byte *);
  bfd_signed_vma (*bfd_getx_signed_32) (const bfd_byte *);
  void (*bfd_putx32) (bfd_vma, bfd_byte *);
  bfd_vma (*bfd_getx16) (const bfd_byte *);
  bfd_signed_vma (*bfd_getx_signed_16) (const bfd_byte *);
  void (*bfd_putx16) (bfd_vma, bfd_byte *);


  bfd_vma (*bfd_h_getx64) (const bfd_byte *);
  bfd_signed_vma (*bfd_h_getx_signed_64) (const bfd_byte *);
  void (*bfd_h_putx64) (bfd_vma, bfd_byte *);
  bfd_vma (*bfd_h_getx32) (const bfd_byte *);
  bfd_signed_vma (*bfd_h_getx_signed_32) (const bfd_byte *);
  void (*bfd_h_putx32) (bfd_vma, bfd_byte *);
  bfd_vma (*bfd_h_getx16) (const bfd_byte *);
  bfd_signed_vma (*bfd_h_getx_signed_16) (const bfd_byte *);
  void (*bfd_h_putx16) (bfd_vma, bfd_byte *);





  const struct bfd_target *(*_bfd_check_format[bfd_type_end]) (bfd *);


  boolean (*_bfd_set_format[bfd_type_end]) (bfd *);


  boolean (*_bfd_write_contents[bfd_type_end]) (bfd *);



#define BFD_JUMP_TABLE_GENERIC(NAME) CONCAT2 (NAME,_close_and_cleanup), CONCAT2 (NAME,_bfd_free_cached_info), CONCAT2 (NAME,_new_section_hook), CONCAT2 (NAME,_get_section_contents), CONCAT2 (NAME,_get_section_contents_in_window)







  boolean (*_close_and_cleanup) (bfd *);

  boolean (*_bfd_free_cached_info) (bfd *);

  boolean (*_new_section_hook) (bfd *, sec_ptr);

  boolean (*_bfd_get_section_contents) (bfd *, sec_ptr, void *, file_ptr, bfd_size_type);

  boolean (*_bfd_get_section_contents_in_window)
    (bfd *, sec_ptr, bfd_window *, file_ptr, bfd_size_type);


#define BFD_JUMP_TABLE_COPY(NAME) CONCAT2 (NAME,_bfd_copy_private_bfd_data), CONCAT2 (NAME,_bfd_merge_private_bfd_data), CONCAT2 (NAME,_bfd_copy_private_section_data), CONCAT2 (NAME,_bfd_copy_private_symbol_data), CONCAT2 (NAME,_bfd_set_private_flags), CONCAT2 (NAME,_bfd_print_private_bfd_data)
# 3700 "bfd.h"
  boolean (*_bfd_copy_private_bfd_data) (bfd *, bfd *);


  boolean (*_bfd_merge_private_bfd_data) (bfd *, bfd *);


  boolean (*_bfd_copy_private_section_data) (bfd *, sec_ptr, bfd *, sec_ptr);



  boolean (*_bfd_copy_private_symbol_data) (bfd *, asymbol *, bfd *, asymbol *);


  boolean (*_bfd_set_private_flags) (bfd *, flagword);


  boolean (*_bfd_print_private_bfd_data) (bfd *, void *);


#define BFD_JUMP_TABLE_CORE(NAME) CONCAT2 (NAME,_core_file_failing_command), CONCAT2 (NAME,_core_file_failing_signal), CONCAT2 (NAME,_core_file_matches_executable_p)



  char * (*_core_file_failing_command) (bfd *);
  int (*_core_file_failing_signal) (bfd *);
  boolean (*_core_file_matches_executable_p) (bfd *, bfd *);


#define BFD_JUMP_TABLE_ARCHIVE(NAME) CONCAT2 (NAME,_slurp_armap), CONCAT2 (NAME,_slurp_extended_name_table), CONCAT2 (NAME,_construct_extended_name_table), CONCAT2 (NAME,_truncate_arname), CONCAT2 (NAME,_write_armap), CONCAT2 (NAME,_read_ar_hdr), CONCAT2 (NAME,_openr_next_archived_file), CONCAT2 (NAME,_get_elt_at_index), CONCAT2 (NAME,_generic_stat_arch_elt), CONCAT2 (NAME,_update_armap_timestamp)
# 3739 "bfd.h"
  boolean (*_bfd_slurp_armap) (bfd *);
  boolean (*_bfd_slurp_extended_name_table) (bfd *);
  boolean (*_bfd_construct_extended_name_table)
    (bfd *, char **, bfd_size_type *, const char **);
  void (*_bfd_truncate_arname) (bfd *, const char *, char *);
  boolean (*write_armap)
    (bfd *, unsigned int, struct orl *, unsigned int, int);
  void * (*_bfd_read_ar_hdr_fn) (bfd *);
  bfd * (*openr_next_archived_file) (bfd *, bfd *);
#define bfd_get_elt_at_index(b,i) BFD_SEND(b, _bfd_get_elt_at_index, (b,i))
  bfd * (*_bfd_get_elt_at_index) (bfd *, symindex);
  int (*_bfd_stat_arch_elt) (bfd *, struct stat *);
  boolean (*_bfd_update_armap_timestamp) (bfd *);


#define BFD_JUMP_TABLE_SYMBOLS(NAME) CONCAT2 (NAME,_get_symtab_upper_bound), CONCAT2 (NAME,_get_symtab), CONCAT2 (NAME,_make_empty_symbol), CONCAT2 (NAME,_print_symbol), CONCAT2 (NAME,_get_symbol_info), CONCAT2 (NAME,_bfd_is_local_label_name), CONCAT2 (NAME,_get_lineno), CONCAT2 (NAME,_find_nearest_line), CONCAT2 (NAME,_bfd_make_debug_symbol), CONCAT2 (NAME,_read_minisymbols), CONCAT2 (NAME,_minisymbol_to_symbol)
# 3766 "bfd.h"
  long (*_bfd_get_symtab_upper_bound) (bfd *);
  long (*_bfd_canonicalize_symtab) (bfd *, struct symbol_cache_entry **);

  struct symbol_cache_entry *
           (*_bfd_make_empty_symbol) (bfd *);
  void (*_bfd_print_symbol) (bfd *, void *, struct symbol_cache_entry *, bfd_print_symbol_type);


#define bfd_print_symbol(b,p,s,e) BFD_SEND(b, _bfd_print_symbol, (b,p,s,e))
  void (*_bfd_get_symbol_info) (bfd *, struct symbol_cache_entry *, symbol_info *);


#define bfd_get_symbol_info(b,p,e) BFD_SEND(b, _bfd_get_symbol_info, (b,p,e))
  boolean (*_bfd_is_local_label_name) (bfd *, const char *);

  alent * (*_get_lineno) (bfd *, struct symbol_cache_entry *);
  boolean (*_bfd_find_nearest_line)
    (bfd *, struct sec *, struct symbol_cache_entry **, bfd_vma, const char **, const char **, unsigned int *);




  asymbol *(*_bfd_make_debug_symbol) (bfd *, void *, unsigned long size);

#define bfd_read_minisymbols(b,d,m,s) BFD_SEND (b, _read_minisymbols, (b, d, m, s))

  long (*_read_minisymbols) (bfd *, boolean, void * *, unsigned int *);

#define bfd_minisymbol_to_symbol(b,d,m,f) BFD_SEND (b, _minisymbol_to_symbol, (b, d, m, f))

  asymbol *(*_minisymbol_to_symbol) (bfd *, boolean, const void *, asymbol *);



#define BFD_JUMP_TABLE_RELOCS(NAME) CONCAT2 (NAME,_get_reloc_upper_bound), CONCAT2 (NAME,_canonicalize_reloc), CONCAT2 (NAME,_bfd_reloc_type_lookup)



  long (*_get_reloc_upper_bound) (bfd *, sec_ptr);
  long (*_bfd_canonicalize_reloc) (bfd *, sec_ptr, arelent **, struct symbol_cache_entry **);


  reloc_howto_type *
           (*reloc_type_lookup) (bfd *, bfd_reloc_code_real_type);


#define BFD_JUMP_TABLE_WRITE(NAME) CONCAT2 (NAME,_set_arch_mach), CONCAT2 (NAME,_set_section_contents)


  boolean (*_bfd_set_arch_mach) (bfd *, enum bfd_architecture, unsigned long);

  boolean (*_bfd_set_section_contents) (bfd *, sec_ptr, void *, file_ptr, bfd_size_type);



#define BFD_JUMP_TABLE_LINK(NAME) CONCAT2 (NAME,_sizeof_headers), CONCAT2 (NAME,_bfd_get_relocated_section_contents), CONCAT2 (NAME,_bfd_relax_section), CONCAT2 (NAME,_bfd_link_hash_table_create), CONCAT2 (NAME,_bfd_link_add_symbols), CONCAT2 (NAME,_bfd_final_link), CONCAT2 (NAME,_bfd_link_split_section), CONCAT2 (NAME,_bfd_gc_sections), CONCAT2 (NAME,_bfd_merge_sections)
# 3831 "bfd.h"
  int (*_bfd_sizeof_headers) (bfd *, boolean);
  bfd_byte *(*_bfd_get_relocated_section_contents)
    (bfd *, struct bfd_link_info *, struct bfd_link_order *, bfd_byte *, boolean, struct symbol_cache_entry **);


  boolean (*_bfd_relax_section)
    (bfd *, struct sec *, struct bfd_link_info *, boolean *);



  struct bfd_link_hash_table *(*_bfd_link_hash_table_create) (bfd *);


  boolean (*_bfd_link_add_symbols) (bfd *, struct bfd_link_info *);



  boolean (*_bfd_final_link) (bfd *, struct bfd_link_info *);


  boolean (*_bfd_link_split_section) (bfd *, struct sec *);


  boolean (*_bfd_gc_sections) (bfd *, struct bfd_link_info *);


  boolean (*_bfd_merge_sections) (bfd *, struct bfd_link_info *);


#define BFD_JUMP_TABLE_DYNAMIC(NAME) CONCAT2 (NAME,_get_dynamic_symtab_upper_bound), CONCAT2 (NAME,_canonicalize_dynamic_symtab), CONCAT2 (NAME,_get_dynamic_reloc_upper_bound), CONCAT2 (NAME,_canonicalize_dynamic_reloc)





  long (*_bfd_get_dynamic_symtab_upper_bound) (bfd *);

  long (*_bfd_canonicalize_dynamic_symtab)
    (bfd *, struct symbol_cache_entry **);

  long (*_bfd_get_dynamic_reloc_upper_bound) (bfd *);

  long (*_bfd_canonicalize_dynamic_reloc)
    (bfd *, arelent **, struct symbol_cache_entry **);


  const struct bfd_target * alternative_target;



  void * backend_data;

} bfd_target;

boolean
bfd_set_default_target (const char *name);

const bfd_target *
bfd_find_target (const char *target_name, bfd *abfd);

const char **
bfd_target_list (void);

const bfd_target *
bfd_search_for_target (int (* search_func) (const bfd_target *, void *), void *);

boolean
bfd_check_format (bfd *abfd, bfd_format format);

boolean
bfd_check_format_matches (bfd *abfd, bfd_format format, char ***matching);

boolean
bfd_set_format (bfd *abfd, bfd_format format);

const char *
bfd_format_string (bfd_format format);
# 131 "/auto/gabellin/prova/src/binutils-2.12/bfd/archive.c" 2
# 1 "/auto/gabellin/prova/src/binutils-2.12/bfd/sysdep.h" 1
# 23 "/auto/gabellin/prova/src/binutils-2.12/bfd/sysdep.h"
#define BFD_SYSDEP_H 



# 1 "config.h" 1
# 15 "config.h"
#define HAVE_ALLOCA 1


#define HAVE_ALLOCA_H 1
# 45 "config.h"
#define STDC_HEADERS 1


#define TIME_WITH_SYS_TIME 1
# 63 "config.h"
#define HAVE_FCNTL 1


#define HAVE_FDOPEN 1


#define HAVE_GETCWD 1


#define HAVE_GETGID 1


#define HAVE_GETPAGESIZE 1


#define HAVE_GETUID 1


#define HAVE_MADVISE 1


#define HAVE_MPROTECT 1


#define HAVE_MUNMAP 1


#define HAVE_PUTENV 1





#define HAVE_SETITIMER 1


#define HAVE_SETLOCALE 1





#define HAVE_STRCASECMP 1


#define HAVE_STRCHR 1


#define HAVE_SYSCONF 1





#define HAVE_DIRENT_H 1


#define HAVE_FCNTL_H 1


#define HAVE_LIMITS_H 1


#define HAVE_LOCALE_H 1


#define HAVE_MALLOC_H 1





#define HAVE_NL_TYPES_H 1


#define HAVE_STDDEF_H 1


#define HAVE_STDLIB_H 1


#define HAVE_STRING_H 1


#define HAVE_STRINGS_H 1





#define HAVE_SYS_FILE_H 1





#define HAVE_SYS_PARAM_H 1





#define HAVE_SYS_TIME_H 1


#define HAVE_TIME_H 1


#define HAVE_UNISTD_H 1


#define HAVE_VALUES_H 1


#define PACKAGE "bfd"


#define VERSION "2.12"





#define HAVE_LC_MESSAGES 1


#define ENABLE_NLS 1
# 28 "/auto/gabellin/prova/src/binutils-2.12/bfd/sysdep.h" 2


# 1 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/stddef.h" 1 3
# 42 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/stddef.h" 3
#define _STDDEF_H 
#define _STDDEF_H_ 

#define _ANSI_STDDEF_H 

#define __STDDEF_H__ 
# 140 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/stddef.h" 3
#define _PTRDIFF_T 
#define _T_PTRDIFF_ 
#define _T_PTRDIFF 
#define __PTRDIFF_T 
#define _PTRDIFF_T_ 
#define _BSD_PTRDIFF_T_ 
#define ___int_ptrdiff_t_h 
#define _GCC_PTRDIFF_T 



typedef long int ptrdiff_t;
# 188 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/stddef.h" 3
#define __size_t__ 
#define __SIZE_T__ 
#define _SIZE_T 
#define _SYS_SIZE_T_H 
#define _T_SIZE_ 
#define _T_SIZE 
#define __SIZE_T 
#define _SIZE_T_ 
#define _BSD_SIZE_T_ 
#define _SIZE_T_DEFINED_ 
#define _SIZE_T_DEFINED 
#define _BSD_SIZE_T_DEFINED_ 
#define _SIZE_T_DECLARED 
#define ___int_size_t_h 
#define _GCC_SIZE_T 
#define _SIZET_ 



#define __size_t 





typedef long unsigned int size_t;
# 264 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/stddef.h" 3
#define __wchar_t__ 
#define __WCHAR_T__ 
#define _WCHAR_T 
#define _T_WCHAR_ 
#define _T_WCHAR 
#define __WCHAR_T 
#define _WCHAR_T_ 
#define _BSD_WCHAR_T_ 
#define _WCHAR_T_DEFINED_ 
#define _WCHAR_T_DEFINED 
#define _WCHAR_T_H 
#define ___int_wchar_t_h 
#define __INT_WCHAR_T_H 
#define _GCC_WCHAR_T 
#define _WCHAR_T_DECLARED 
# 291 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/stddef.h" 3
#undef _BSD_WCHAR_T_
# 325 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/stddef.h" 3
typedef unsigned int wchar_t;
# 402 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/stddef.h" 3
#define NULL ((void *)0)
# 414 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/stddef.h" 3
#define offsetof(TYPE,MEMBER) ((size_t) &((TYPE *)0)->MEMBER)
# 31 "/auto/gabellin/prova/src/binutils-2.12/bfd/sysdep.h" 2


# 1 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/stdio.h" 1 3
# 11 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/stdio.h" 3
#define FIXINC_WRAP_STDIO_H_STDIO_STDARG_H 1

#define __need___va_list 
# 1 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/stdarg.h" 1 3
# 37 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/stdarg.h" 3
#undef __need___va_list




#define __GNUC_VA_LIST 
typedef __builtin_va_list __gnuc_va_list;
# 15 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/stdio.h" 2 3


#define _STDIO_INCLUDED 


# 1 "/usr/include/sys/stdsyms.h" 1 3






#define _SYS_STDSYMS_INCLUDED 





#define _INCLUDE__STDC__ 

#define _INCLUDE_POSIX_SOURCE 
#define _INCLUDE_POSIX1C_SOURCE 
#define _INCLUDE_POSIX2_SOURCE 
#define _INCLUDE_POSIX4_SOURCE 
#define _INCLUDE_XOPEN_SOURCE 
#define _INCLUDE_XOPEN_SOURCE_EXTENDED 
#define _INCLUDE_AES_SOURCE 
#define _INCLUDE_HPUX_SOURCE 
# 106 "/usr/include/sys/stdsyms.h" 3
#define _XPG4_EXTENDED 

#define _INCLUDE_AES_SOURCE 
# 119 "/usr/include/sys/stdsyms.h" 3
#define _XPG4 
# 223 "/usr/include/sys/stdsyms.h" 3
#define _PROTOTYPES 







#define _WSIO 
# 275 "/usr/include/sys/stdsyms.h" 3
#define _LFS_LARGEFILE 1
#define _LFS64_LARGEFILE 1
# 305 "/usr/include/sys/stdsyms.h" 3
#define __(arg) arg
# 324 "/usr/include/sys/stdsyms.h" 3
#define _LF_EXTERN_OR_STATIC_OR_INLINE extern
#define _LF_EXTERN extern




#define __const const
# 21 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/stdio.h" 2 3
# 34 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/stdio.h" 3
#define _NAMESPACE_STD_START 
#define _NAMESPACE_STD_END 
#define _hpux_size_t size_t
#define __time_t time_t
#define __FILE FILE
#define __fpos_t fpos_t
#define __wint_t wint_t
#define __struct_tm struct tm
#define __va__list __not_va_list__


# 1 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/sys/types.h" 1 3
# 13 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/sys/types.h" 3
#define _SYS_TYPES_INCLUDED 






# 1 "/usr/include/sys/_inttypes.h" 1 3
# 31 "/usr/include/sys/_inttypes.h" 3
#define __INTTYPES_INCLUDED 
# 51 "/usr/include/sys/_inttypes.h" 3
#define __LL_MODE__ 






typedef char int8_t;
typedef unsigned char uint8_t;
typedef short int16_t;
typedef unsigned short uint16_t;
typedef int int32_t;
typedef unsigned int uint32_t;

typedef int intfast_t;
typedef unsigned int uintfast_t;




typedef long long int64_t;
typedef unsigned long long uint64_t;





typedef int64_t intmax_t;
typedef uint64_t uintmax_t;
# 88 "/usr/include/sys/_inttypes.h" 3
typedef long intptr_t;
typedef unsigned long uintptr_t;
# 99 "/usr/include/sys/_inttypes.h" 3
typedef char int_least8_t;


typedef unsigned char uint_least8_t;


typedef int int_fast8_t;


typedef unsigned int uint_fast8_t;


typedef short int_least16_t;


typedef unsigned short uint_least16_t;


typedef int int_fast16_t;


typedef unsigned int uint_fast16_t;


typedef int int_least32_t;


typedef unsigned int uint_least32_t;


typedef int int_fast32_t;


typedef unsigned int uint_fast32_t;





typedef int64_t int_least64_t;


typedef int64_t int_fast64_t;


typedef uint64_t uint_least64_t;


typedef uint64_t uint_fast64_t;
# 164 "/usr/include/sys/_inttypes.h" 3
typedef uint32_t ptr32_t;
# 21 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/sys/types.h" 2 3





#define _MQD_T 
                typedef int mqd_t;




#define _DEV_T 
     typedef int32_t dev_t;




#define _INO32_T 
        typedef uint32_t ino32_t;




#define _INO64_T 

       typedef uint64_t ino64_t;
# 57 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/sys/types.h" 3
#define _INO_T 



         typedef unsigned long ino_t;




#define _MODE_T 
     typedef uint16_t mode_t;



#define _NLINK_T 
     typedef uint16_t nlink_t;



#define _FPOS32_T 
    typedef int32_t fpos32_t;



#define _FPOS64_T 

       typedef int64_t fpos64_t;




#define _FPOS_T 



       typedef long fpos_t;




#define _FSBLOCKS32_T 
     typedef uint32_t fsblkcnt32_t;



#define _FSBLOCKS64_T 

       typedef uint64_t fsblkcnt64_t;




#define _FSBLOCKS_T 




       typedef unsigned long fsblkcnt_t;




#define _OFF32_T 
     typedef int32_t off32_t;



#define _OFF64_T 

        typedef int64_t off64_t;




#define _OFF_T 




        typedef long off_t;




#define _FSFILCNT32_T 
     typedef uint32_t fsfilcnt32_t;



#define _FSFILCNT64_T 

       typedef uint64_t fsfilcnt64_t;




#define _FSFILCNT_T 




        typedef unsigned long fsfilcnt_t;




#define _BLKCNT32_T 
     typedef int32_t blkcnt32_t;



#define _BLKCNT64_T 

       typedef int64_t blkcnt64_t;




#define _BLKCNT_T 




        typedef long blkcnt_t;




#define _PID_T 
     typedef int32_t pid_t;



#define _LWPID_T 
     typedef int32_t lwpid_t;



#define _GID_T 
     typedef int32_t gid_t;



#define _UID_T 
     typedef int32_t uid_t;



#define _TID_T 
     typedef int32_t tid_t;



#define _SSIZE_T 
        typedef long ssize_t;



#define _SITE_T 
     typedef uint16_t __site_t;



#define _CNODE_T 
     typedef uint16_t __cnode_t;





#define _TIME_T 



                typedef long time_t;
# 249 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/sys/types.h" 3
#define _CLOCK_T 
     typedef uint32_t clock_t;





#define _KEY_T 
      typedef int32_t key_t;


   typedef unsigned short __ushort;

   typedef int32_t __daddr_t;
   typedef char *__caddr_t;
   typedef int32_t __swblk_t;





#define _CADDR_T 
     typedef __caddr_t caddr_t;






#define _ID_T 
     typedef int32_t id_t;



#define _USECONDS_T 
     typedef uint32_t useconds_t;





#define _RLIM32_T 
      typedef uint32_t rlim32_t;



#define _RLIM64_T 

        typedef uint64_t rlim64_t;




#define _RLIM_T 






       typedef unsigned long rlim_t;




   typedef __site_t site_t;



   typedef unsigned char u_char;
   typedef unsigned short u_short;
   typedef unsigned int u_int;
   typedef unsigned long u_long;
   typedef unsigned int uint;
   typedef unsigned short ushort;
   typedef unsigned char ubit8;
   typedef unsigned short ubit16;
   typedef uint32_t ubit32;
   typedef char sbit8;
   typedef short sbit16;
   typedef int32_t sbit32;

   typedef __swblk_t swblk_t;
   typedef __daddr_t daddr_t;
   typedef __cnode_t cnode_t;





# 1 "/usr/include/machine/vmtypes.h" 1 3






#define _VMTYPES_INCLUDED 


   typedef uintptr_t paddr_t;






   typedef intptr_t page_t;
   typedef int32_t pgcnt_t;
   typedef uint32_t physpfn_t;
   typedef uintptr_t iophyspfn_t;
   typedef uintptr_t pgaddr_t;

   typedef uint32_t space_t;
   typedef uint32_t prot_t;
# 340 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/sys/types.h" 2 3



#define _ULONG_T 
   typedef unsigned long ulong_t;


   typedef int16_t cnt_t;
   typedef uint32_t cdno_t;
   typedef uint16_t use_t;

   typedef struct _physadr { intptr_t r[1]; } *physadr;
   typedef struct _quad { long val[2]; } quad;

   typedef int spu_t;


#define MAXSUSE 65535


     typedef short cpu_t;

     typedef struct label_t {







        int32_t lbl_rp;
        int32_t lbl_sp;
        int32_t lbl_s[17];
        int32_t lbl_ss[1];
        double lbl_sf[10];

    } label_t;




typedef struct lkinfo {
       char *lk_name;
       int lk_flags;
       long lk_pad[2];
} lkinfo_t;

typedef unsigned long pl_t;


   typedef char *dm_message;



#define _AID_T 
      typedef int32_t aid_t;





#define UID_NO_CHANGE ((uid_t) -1)
#define GID_NO_CHANGE ((gid_t) -1)

   typedef pid_t sid_t;

#define PGID_NOT_SET ((pid_t) -1)
#define SID_NOT_SET ((sid_t) -1)
#define PGID_USE_PID ((pid_t) -2)
#define SID_USE_PID ((sid_t) -2)





#define __fd_set fd_set



# 1 "/usr/include/sys/_fd_macros.h" 1 3
# 24 "/usr/include/sys/_fd_macros.h" 3
#define _MAXFUPLIM 2048
# 37 "/usr/include/sys/_fd_macros.h" 3
#define FD_SETSIZE _MAXFUPLIM
# 51 "/usr/include/sys/_fd_macros.h" 3
typedef int32_t __fd_mask;

#define _NFDBITS (sizeof(__fd_mask) * 8)

#define __howmany(x,y) (((x)+((y)-1))/(y))



#define _FD_SET 
   typedef struct fd_set {
     long fds_bits[(((2048)+(((sizeof(long) * 8))-1))/((sizeof(long) * 8)))];
     } fd_set;







#define FD_SET(n,p) (((__fd_mask *)((p)->fds_bits))[(n)/_NFDBITS] |= (1 << ((n) % _NFDBITS)))
#define FD_CLR(n,p) (((__fd_mask *)((p)->fds_bits))[(n)/_NFDBITS] &= ~(1 << ((n) % _NFDBITS)))
#define FD_ISSET(n,p) (((__fd_mask *)((p)->fds_bits))[(n)/_NFDBITS] & (1 << ((n) % _NFDBITS)))
#define FD_ZERO(p) memset((void *)(p), (int) 0, sizeof(*(p)))
# 420 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/sys/types.h" 2 3

#undef __fd_set


#define MAXFUPLIM _MAXFUPLIM
#define NFDBITS _NFDBITS

#define howmany(x,y) (((x)+((y)-1))/(y))

     typedef __fd_mask fd_mask;
# 482 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/sys/types.h" 3
#define _DIR_OFF_T 
        typedef int32_t dir_off_t;
# 46 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/stdio.h" 2 3
# 61 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/stdio.h" 3
#define _LF_EXTERN_OR_STATIC_OR_INLINE extern
# 70 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/stdio.h" 3
#define _NFILE 60
#define BUFSIZ 1024
#define _DBUFSIZ 8192


#define _SBFSIZ 8


   typedef struct {
        int __cnt;
        unsigned char *__ptr;
        unsigned char *__base;
        unsigned short __flag;
        unsigned char __fileL;
        unsigned char __fileH;
   } FILE;


   typedef struct {
        int __cnt;
        unsigned char *__ptr;
        unsigned char *__base;
        unsigned short __flag;
        unsigned char __fileL;
        unsigned char __fileH;
        unsigned char *__bufendp;
        unsigned char *__newbase;
        unsigned char __smbuf[8 +2*4];



        void *__unused;

   } _FILEX;






#define _IOFBF 0000000
#define _IOREAD 0000001
#define _IOWRT 0000002
#define _IONBF 0000004
#define _IOMYBUF 0000010
#define _IOEOF 0000020
#define _IOERR 0000040
#define _IOLBF 0000200
#define _IORW 0000400
#define _IOEXT 0001000
#define _IODUMMY 0002000


# 1 "/usr/include/sys/_null.h" 1 3
# 124 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/stdio.h" 2 3



# 1 "/usr/include/sys/_size_t.h" 1 3
# 22 "/usr/include/sys/_size_t.h" 3
#define _NAMESPACE_STD_START 
#define _NAMESPACE_STD_END 




#define _SIZE_T_INCLUDED 
# 128 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/stdio.h" 2 3
# 158 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/stdio.h" 3
     typedef double *__va_list;




#define SEEK_SET 0
#define SEEK_CUR 1
#define SEEK_END 2


#define _P_tmpdir "/var/tmp/"

#define L_tmpnam (sizeof(_P_tmpdir) + 15)


#define TMP_MAX 17576


#define FILENAME_MAX 14
#define FOPEN_MAX _NFILE


#define EOF (-1)


#define stdin (&__iob[0])
#define stdout (&__iob[1])
#define stderr (&__iob[2])

   extern FILE __iob[];



     extern int remove(const char *);

     extern int rename(const char *, const char *);

     extern char *tmpnam(char *);
     extern int fclose(FILE *);
     extern int fflush(FILE *);
     extern void setbuf(FILE *, char *);
     extern int setvbuf(FILE *, char *, int, size_t);
     extern int fprintf(FILE *, const char *, ...);
     extern int fscanf(FILE *, const char *,...);
     extern int printf(const char *,...);
     extern int scanf(const char *,...);
     extern int sprintf(char *, const char *,...);
     extern int sscanf(const char *, const char *,...);
     extern int fgetc(FILE *);
     extern char *fgets(char *, int, FILE *);
     extern int fputc(int, FILE *);
     extern int fputs(const char *, FILE *);
     extern int getc(FILE *);
     extern int getchar(void);
     extern char *gets(char *);
     extern int putc(int, FILE *);
     extern int putchar(int);
     extern int puts(const char *);
     extern int ungetc(int, FILE *);
     extern FILE *tmpfile(void);
     extern int fgetpos(FILE *, fpos_t *);
     extern int fsetpos(FILE *, const fpos_t *);
     extern FILE *fopen(const char *, const char *);
     extern FILE *freopen(const char *, const char *, FILE *);
     extern int fseek(FILE *, long int, int);
     extern long int ftell(FILE *);
     extern void rewind(FILE *);
     extern void clearerr(FILE *);
     extern int feof(FILE *);
     extern int ferror(FILE *);
     extern void perror(const char *);

# 310 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/stdio.h" 3

       extern size_t fread(void *, size_t, size_t, FILE *);
       extern size_t fwrite(const void *, size_t, size_t, FILE *);

# 328 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/stdio.h" 3
     extern int __flsbuf(unsigned char, FILE *);
     extern int __filbuf(FILE *);
# 377 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/stdio.h" 3
#define clearerr(__p) ((void) ((__p)->__flag &= ~(_IOERR | _IOEOF)))
#define feof(__p) ((__p)->__flag & _IOEOF)
#define ferror(__p) ((__p)->__flag & _IOERR)
#define getc(__p) (--(__p)->__cnt >= 0 ? (int) *(__p)->__ptr++ : __filbuf(__p))


#define getchar() getc(stdin)

#define putc(__c,__p) (--(__p)->__cnt >= 0 ? (int) (*(__p)->__ptr++ = (unsigned char) (__c)) : __flsbuf((unsigned char) (__c), (__p)))



#define putchar(__c) putc((__c), stdout)





#define L_ctermid 9
#define L_cuserid 9


     extern char *ctermid(char *);
     extern int fileno(FILE *);
     extern FILE *fdopen(int, const char *);
# 421 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/stdio.h" 3
#define _DUMMY_VA_LIST 

         typedef double *__not_va_list__;




     extern char *optarg;
     extern int opterr;
     extern int optind;
     extern int optopt;


       extern int getopt(int, char * const [], const char *);
       extern char *cuserid(char *);
# 444 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/stdio.h" 3
#define P_tmpdir _P_tmpdir


     extern int getw(FILE *);
     extern int putw(int, FILE *);
     extern int pclose(FILE *);
     extern FILE *popen(const char *, const char *);
     extern char *tempnam(const char *, const char *);
# 474 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/stdio.h" 3


     extern int vprintf(const char *, __gnuc_va_list);
     extern int vfprintf(FILE *, const char *, __gnuc_va_list);
     extern int vsprintf(char *, const char *, __gnuc_va_list);











#define _iob __iob


     extern int snprintf(char *, size_t, char *,...);
     extern int vsnprintf(char *, size_t, const char *, __gnuc_va_list);
     extern int vscanf(const char *, __gnuc_va_list);
     extern int vfscanf(FILE *, const char *, __gnuc_va_list);
     extern int vsscanf(char *, const char *, __gnuc_va_list);
     extern void flockfile(FILE *);
     extern int ftrylockfile(FILE *);
     extern void funlockfile(FILE *);
# 548 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/stdio.h" 3
   extern unsigned char *__bufendtab[];

#define _cnt __cnt
#define _ptr __ptr
#define _base __base
#define _flag __flag

#define _bufend(__p) (*(((__p)->__flag & _IOEXT) ? &(((_FILEX *)(__p))->__bufendp) : &(__bufendtab[(__p) - __iob])))



#define _bufsiz(__p) (_bufend(__p) - (__p)->__base)
# 34 "/auto/gabellin/prova/src/binutils-2.12/bfd/sysdep.h" 2

# 1 "/usr/include/sys/stat.h" 1 3






#define _SYS_STAT_INCLUDED 
# 26 "/usr/include/sys/stat.h" 3
#define __stat stat
#define _T_INO_T ino_t
#define _T_OFF_T off_t
#define _T_BLKCNT_T blkcnt_t



# 1 "/usr/include/sys/_stat_body.h" 1 3
# 12 "/usr/include/sys/_stat_body.h" 3
   struct stat
   {
        dev_t st_dev;
        ino_t st_ino;
        mode_t st_mode;
        nlink_t st_nlink;
        unsigned short st_reserved1;
        unsigned short st_reserved2;
        dev_t st_rdev;
        off_t st_size;
        time_t st_atime;
        int st_spare1;
        time_t st_mtime;
        int st_spare2;
        time_t st_ctime;
        int st_spare3;
        long st_blksize;
        blkcnt_t st_blocks;
        unsigned int st_pad:29;

        unsigned int st_sysVacl:1;
        unsigned int st_acl:1;
        unsigned int st_remote:1;
        dev_t st_netdev;

        ino_t st_netino;
        __cnode_t st_cnode;
        __cnode_t st_rcnode;

        __site_t st_netsite;
        short st_fstype;

        dev_t st_realdev;

        unsigned short st_basemode;
        unsigned short st_spareshort;




        uid_t st_uid;





        gid_t st_gid;

#define _SPARE4_SIZE 3
        int32_t st_spare4[3];
   };
# 34 "/usr/include/sys/stat.h" 2 3

#undef _T_INO_T
#undef _T_OFF_T
#undef _T_BLKCNT_T
#undef __stat
# 84 "/usr/include/sys/stat.h" 3
     extern int chmod (const char *, mode_t);
     extern int mkdir (const char *, mode_t);
     extern int mkfifo (const char *, mode_t);
     extern int fstat (int, struct stat *);
     extern int stat (const char *, struct stat *);




       extern mode_t umask (mode_t);




      extern int fchmod (int, mode_t);
      extern int lstat (const char *, struct stat *);



      extern int mknod (const char *, mode_t, dev_t);
# 145 "/usr/include/sys/stat.h" 3
#define S_ISUID 0004000
#define S_ISGID 0002000

#define S_IRWXU 0000700
#define S_IRUSR 0000400
#define S_IWUSR 0000200
#define S_IXUSR 0000100

#define S_IRWXG 0000070
#define S_IRGRP 0000040
#define S_IWGRP 0000020
#define S_IXGRP 0000010

#define S_IRWXO 0000007
#define S_IROTH 0000004
#define S_IWOTH 0000002
#define S_IXOTH 0000001


#define _S_IFMT 0170000
#define _S_IFREG 0100000
#define _S_IFBLK 0060000
#define _S_IFCHR 0020000
#define _S_IFDIR 0040000
#define _S_IFIFO 0010000

#define S_ISDIR(_M) ((_M & _S_IFMT)==_S_IFDIR)
#define S_ISCHR(_M) ((_M & _S_IFMT)==_S_IFCHR)
#define S_ISBLK(_M) ((_M & _S_IFMT)==_S_IFBLK)
#define S_ISREG(_M) ((_M & _S_IFMT)==_S_IFREG)
#define S_ISFIFO(_M) ((_M & _S_IFMT)==_S_IFIFO)



#define S_TYPEISMQ(buf) (0)
#define S_TYPEISSEM(buf) (0)
#define S_TYPEISSHM(buf) (0)



#define S_IFMT _S_IFMT
#define S_IFBLK _S_IFBLK
#define S_IFCHR _S_IFCHR
#define S_IFDIR _S_IFDIR
#define S_IFIFO _S_IFIFO
#define S_IFREG _S_IFREG






#define S_IFLNK 0120000
#define S_ISLNK(_M) ((_M & S_IFMT)==S_IFLNK)




#define S_ISVTX 0001000


#define S_IFSOCK 0140000
#define S_ISSOCK(_M) ((_M & S_IFMT)==S_IFSOCK)



#define S_CDF 0004000
#define S_ENFMT 0002000
#define S_IFNWK 0110000


#define S_ISNWK(_M) ((_M & S_IFMT)==S_IFNWK)
#define S_ISCDF(_M) (S_ISDIR(_M) && (_M & S_CDF))




#define S_IREAD S_IRUSR
#define S_IWRITE S_IWUSR
#define S_IEXEC S_IXUSR

#define st_rsite st_rcnode
# 36 "/auto/gabellin/prova/src/binutils-2.12/bfd/sysdep.h" 2

# 1 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/errno.h" 1 3
# 12 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/errno.h" 3
#define _ERRNO_INCLUDED 
# 28 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/errno.h" 3
#define _NAMESPACE_STD_START 
#define _NAMESPACE_STD_END 
#define _hpux_size_t size_t
#define __time_t time_t
#define __FILE FILE
#define __wint_t wint_t
#define __struct_tm struct tm
#define __va__list va_list
# 57 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/errno.h" 3
        extern int errno;

# 1 "/usr/include/sys/errno.h" 1 3



#define _SYS_ERRNO_INCLUDED 
# 28 "/usr/include/sys/errno.h" 3
         extern int errno;
# 38 "/usr/include/sys/errno.h" 3
#define EDOM 33
#define ERANGE 34





#define EPERM 1
#define ENOENT 2
#define ESRCH 3
#define EINTR 4
#define EIO 5
#define ENXIO 6
#define E2BIG 7
#define ENOEXEC 8
#define EBADF 9
#define ECHILD 10
#define EAGAIN 11
#define ENOMEM 12
#define EACCES 13
#define EFAULT 14
#define EBUSY 16
#define EEXIST 17
#define EXDEV 18
#define ENODEV 19
#define ENOTDIR 20
#define EISDIR 21
#define EINVAL 22
#define ENFILE 23
#define EMFILE 24
#define ENOTTY 25
#define EFBIG 27
#define ENOSPC 28
#define ESPIPE 29
#define EROFS 30
#define EMLINK 31
#define EPIPE 32
#define EDEADLK 45
#define ENOLCK 46
#define EILSEQ 47
#define ENOTEMPTY 247
#define ENAMETOOLONG 248
#define ENOSYS 251




#define ENOTSUP 252
#define ECANCELED 253




#define ENOTBLK 15
#define ETXTBSY 26

#define ENOMSG 35
#define EIDRM 36





#define ELOOP 249






#define ENOTSOCK 216
#define EDESTADDRREQ 217
#define EMSGSIZE 218
#define EPROTOTYPE 219
#define ENOPROTOOPT 220
#define EPROTONOSUPPORT 221
#define EOPNOTSUPP 223
#define EAFNOSUPPORT 225

#define EADDRINUSE 226
#define EADDRNOTAVAIL 227


#define ENETDOWN 228
#define ENETUNREACH 229
#define ECONNABORTED 231
#define ECONNRESET 232
#define ENOBUFS 233
#define EISCONN 234
#define ENOTCONN 235
#define ETIMEDOUT 238
#define ECONNREFUSED 239
#define EHOSTUNREACH 242

#define EALREADY 244
#define EINPROGRESS 245
#define EWOULDBLOCK 246

#define ENODATA 51
#define ETIME 52
#define ENOSR 53
#define ENOSTR 54
#define ENOLINK 57
#define EPROTO 61
#define EMULTIHOP 64
#define EBADMSG 67
#define EDQUOT 69
#define ESTALE 70

#define EOVERFLOW 72






#define ECHRNG 37
#define EL2NSYNC 38
#define EL3HLT 39
#define EL3RST 40
#define ELNRNG 41
#define EUNATCH 42
#define ENOCSI 43
#define EL2HLT 44

#define ENONET 50
#define ENOPKG 55
#define EADV 58
#define ESRMNT 59
#define ECOMM 60
#define EDOTDOT 66


#define ENOSYM 215


#define EUSERS 68


#define EREMOTE 71




#define ESOCKTNOSUPPORT 222
#define EPFNOSUPPORT 224


#define ENETRESET 230

#define ESHUTDOWN 236
#define ETOOMANYREFS 237
#define EREFUSED ECONNREFUSED
#define EREMOTERELEASE 240
#define EHOSTDOWN 241
# 201 "/usr/include/sys/errno.h" 3
#define ENOLOAD 152
#define ERELOC 153
#define ENOMATCH 154
#define ENOUNLD 155
#define EBADVER 156

#define ECONFIG 157
#define ENOREG 158
#define ENOUNREG 159
# 60 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/errno.h" 2 3
# 38 "/auto/gabellin/prova/src/binutils-2.12/bfd/sysdep.h" 2

extern int errno;



# 1 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/string.h" 1 3
# 12 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/string.h" 3
#define _STRING_INCLUDED 
# 28 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/string.h" 3
#define _NAMESPACE_STD_START 
#define _NAMESPACE_STD_END 
#define _hpux_size_t size_t
#define __time_t time_t
#define __FILE FILE
#define __wint_t wint_t
#define __struct_tm struct tm
#define __va__list va_list
# 47 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/string.h" 3
# 1 "/usr/include/sys/_null.h" 1 3
# 48 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/string.h" 2 3
# 59 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/string.h" 3

     extern int memcmp(const void *, const void *, size_t);
     extern char *strncat(char *, const char *, size_t);
     extern int strncmp(const char *, const char *, size_t);
     extern void *memmove(void *, const void *, size_t);
     extern char *strcpy(char *, const char *);
     extern char *strncpy(char *, const char *, size_t);
     extern char *strcat(char *, const char *);
     extern int strcmp(const char *, const char *);
     extern int strcoll(const char *, const char *);
     extern size_t strxfrm(char *, const char *, size_t);




     extern char *strchr(const char *, int);
     extern char *strpbrk(const char *, const char *);
     extern char *strrchr(const char *, int);
     extern char *strstr(const char *, const char *);



     extern char *strtok(char *, const char *);
     extern char *strerror(int);

# 124 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/string.h" 3

       extern void *memcpy(void *, const void *, size_t);




       extern void *memchr(const void *, int, size_t);



       extern void *memset(void *, int, size_t);
       extern size_t strcspn(const char *, const char *);
       extern size_t strspn(const char *, const char *);





          extern size_t strlen(const char *);

# 161 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/string.h" 3
       extern void *memccpy(void *, const void *, int, size_t);
# 180 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/string.h" 3
     extern char *strdup(const char *);







     extern char *strrstr(const char *, const char *);
     extern int strcasecmp(const char *, const char *);
     extern int strncasecmp(const char *, const char *, size_t);
     extern int nl_strcmp(const char *, const char *);
     extern int nl_strncmp(const char *, const char *, size_t);
# 44 "/auto/gabellin/prova/src/binutils-2.12/bfd/sysdep.h" 2
# 54 "/auto/gabellin/prova/src/binutils-2.12/bfd/sysdep.h"
# 1 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/stdlib.h" 1 3
# 12 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/stdlib.h" 3
#define _STDLIB_INCLUDED 
# 30 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/stdlib.h" 3
#define _NAMESPACE_STD_START 
#define _NAMESPACE_STD_END 
#define _hpux_size_t size_t
#define __time_t time_t
#define __FILE FILE
#define __wint_t wint_t
#define __struct_tm struct tm
#define __va__list va_list





          extern int abs(int);
# 61 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/stdlib.h" 3
#define EXIT_FAILURE 1
#define EXIT_SUCCESS 0
#define MB_CUR_MAX __nl_char_size
   extern int __nl_char_size;





#define _LDBL_MAX { 0x7ffeffff, 0xffffffff, 0xffffffff, 0xffffffff }
#define _LDBL_NMAX { 0xfffeffff, 0xffffffff, 0xffffffff, 0xffffffff }
#define _ZERO { 0, 0, 0, 0 }
#define __LDBL_MAX(__a) ((__a == 0) ? 0x7ffeffff : 0xffffffff)
#define __LDBL_NMAX(__a) ((__a == 0) ? 0xfffeffff : 0xffffffff)

#define RAND_MAX 32767

   typedef struct {
        int quot;
        int rem;
   } div_t;
   typedef struct {
        long int quot;
        long int rem;
   } ldiv_t;







# 1 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/sys/_wchar_t.h" 1 3
# 27 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/sys/_wchar_t.h" 3
#define _WCHAR_T_INCLUDED 
# 94 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/stdlib.h" 2 3





#define _ATOF_DEFINED 
       extern double atof(const char *);

     extern int atoi(const char *);
     extern long int atol(const char *);
     extern double strtod(const char *, char **);
     extern long int strtol(const char *, char **, int);
     extern unsigned long int strtoul(const char *, char **, int);
     extern int rand(void);
     extern void srand(unsigned int);
     extern int atexit(void (*) (void));
     extern void exit(int);
     extern char *getenv(const char *);
     extern int system(const char *);
     extern div_t div(int, int);
     extern ldiv_t ldiv(long int, long int);
     extern long int labs(long int);
     extern int mblen(const char *, size_t);
     extern int mbtowc(wchar_t *, const char *, size_t);
     extern int wctomb(char *, wchar_t);
     extern size_t mbstowcs(wchar_t *, const char *, size_t);
     extern size_t wcstombs(char *, const wchar_t *, size_t);
     extern void free(void *);
     extern void qsort(void *, size_t, size_t, int (*)(const void *, const void *));

# 161 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/stdlib.h" 3

       extern void abort(void);
       extern void *bsearch(const void *, const void *, size_t, size_t, int (*) (const void *, const void *));
       extern void *calloc(size_t, size_t);
       extern void *malloc(size_t);
       extern void *realloc(void *, size_t);

# 215 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/stdlib.h" 3
     extern void setkey(const char *);
     extern void lcong48( unsigned short [] );
# 226 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/stdlib.h" 3
        extern double drand48(void);
        extern double erand48(unsigned short []);
        extern long jrand48(unsigned short []);
        extern long lrand48(void);
        extern long mrand48(void);
        extern long nrand48(unsigned short []);
        extern void srand48(long);
        extern unsigned short *seed48(unsigned short []);
        extern int putenv(const char *);
# 250 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/stdlib.h" 3
       extern int clearenv(void);
       extern int getopt(int, char * const [], const char *);
       extern char *getpass(const char *);






     extern char *optarg;
     extern int optind;
     extern int opterr;



# 1 "/usr/include/sys/wait.h" 1 3



#define _SYS_WAIT_INCLUDED 
# 33 "/usr/include/sys/wait.h" 3
#define WNOHANG 1
#define WUNTRACED 2
#define _WNOWAIT 4
# 47 "/usr/include/sys/wait.h" 3
#define WIFEXITED(_X) (((_X)&0377)==0)
#define WIFSTOPPED(_X) (((_X)&0377)==0177)
#define WEXITSTATUS(_X) (((_X)>>8)&0377)
#define WTERMSIG(_X) ((_X)&0177)
#define WSTOPSIG(_X) (((_X)>>8)&0377)
# 63 "/usr/include/sys/wait.h" 3
       extern pid_t wait(int *);
       extern pid_t waitpid(pid_t, int *, int);
# 83 "/usr/include/sys/wait.h" 3
# 1 "/usr/include/sys/resource.h" 1 3
# 9 "/usr/include/sys/resource.h" 3
#define _SYS_RESOURCE_INCLUDED 
# 26 "/usr/include/sys/resource.h" 3
# 1 "/usr/include/sys/time.h" 1 3



#define _SYS_TIME_INCLUDED 
# 15 "/usr/include/sys/time.h" 3
# 1 "/usr/include/sys/sigevent.h" 1 3
# 9 "/usr/include/sys/sigevent.h" 3
#define _SYS_SIGEVENT_INCLUDED 
# 22 "/usr/include/sys/sigevent.h" 3
typedef union sigval {



      struct {



          int __svi_int;
      } __svi_int_s;
      void * __sival_ptr;
   } sigval_t;

#define __sival_int __svi_int_s.__svi_int



#define __PTHREAD_ATTR_T 
typedef int pthread_attr_t;




typedef struct sigevent {



      int __sigev_notify;
      int __sigev_signo;
      sigval_t __sigev_value;




      void (*__sigev_notify_function)(sigval_t);





      pthread_attr_t *__sigev_notify_attributes;







      int __sigev_reserved[8];

   } sigevent_t;

  enum __sigev_types {
          __SIGEV_NONE = 1,
          __SIGEV_SIGNAL

          ,__SIGEV_THREAD

  };


#define sival_int __sival_int
#define sival_ptr __sival_ptr
#define sigev_notify __sigev_notify
#define sigev_signo __sigev_signo
#define sigev_value __sigev_value
#define SIGEV_NONE __SIGEV_NONE
#define SIGEV_SIGNAL __SIGEV_SIGNAL



#define sigev_notify_function __sigev_notify_function
#define sigev_notify_attributes __sigev_notify_attributes
#define SIGEV_THREAD __SIGEV_THREAD
# 16 "/usr/include/sys/time.h" 2 3
# 76 "/usr/include/sys/time.h" 3
#define CLOCKS_PER_SEC 1000000
# 85 "/usr/include/sys/time.h" 3
#define _STRUCT_TM 
   struct tm {
      int tm_sec;
      int tm_min;
      int tm_hour;
      int tm_mday;
      int tm_mon;
      int tm_year;
      int tm_wday;
      int tm_yday;
      int tm_isdst;
   };






#define _STRUCT_TIMESPEC 

  struct timespec {
        time_t tv_sec;
        long tv_nsec;
};
typedef struct timespec timestruc_t;



#define _STRUCT_ITIMERSPEC 

struct itimerspec {
        struct timespec it_interval;
        struct timespec it_value;
};


typedef enum __clockid_t {
        CLOCK_INVALID = 0,
        CLOCK_REALTIME = 1,
        CLOCK_VIRTUAL = 2,
        CLOCK_PROFILE = 4,
        RTTIMER0 = 8,
        RTTIMER1 = 16
} clockid_t;


#define _TIMER_T 
        typedef unsigned long timer_t;





#define TIMER_ABSTIME 0x1






#define _STRUCT_TIMEVAL 

        struct timeval {

                time_t tv_sec;



                long tv_usec;
        };



   struct itimerval {
        struct timeval it_interval;
        struct timeval it_value;
   };





   struct timezone {
        int tz_minuteswest;
        int tz_dsttime;
   };


   typedef struct __cycles {
        uint32_t hi;
        uint32_t lo;
   } cycles_t;
# 218 "/usr/include/sys/time.h" 3
#define _DIFFTIME 
     extern double difftime(time_t, time_t);



#define _MKTIME 
     extern time_t mktime(struct tm *);



#define _TIME 
     extern time_t time(time_t *);



     extern char *asctime(const struct tm *);



#define _CTIME 
     extern char *ctime(const time_t *);



#define _GMTIME 
     extern struct tm *gmtime(const time_t *);



#define _LOCALTIME 
     extern struct tm *localtime(const time_t *);



#define _STRFTIME 
     extern size_t strftime(char *, size_t, const char *, const struct tm *);
# 371 "/usr/include/sys/time.h" 3
#define _CLOCK 
       extern clock_t clock(void);
# 388 "/usr/include/sys/time.h" 3
#define _TZSET 
     extern void tzset(void);
# 398 "/usr/include/sys/time.h" 3
   extern char *tzname[2];






     extern int clock_settime(clockid_t, const struct timespec *);
     extern int clock_gettime(clockid_t, struct timespec *);
     extern int clock_getres(clockid_t, struct timespec *);
     extern int timer_create(clockid_t, struct sigevent *, timer_t *);
     extern int timer_delete(timer_t);
     extern int timer_settime(timer_t, int, const struct itimerspec *,
                              struct itimerspec *);
     extern int timer_gettime(timer_t, struct itimerspec *);
     extern int timer_getoverrun(timer_t);
     extern int nanosleep(const struct timespec *, struct timespec *);
# 438 "/usr/include/sys/time.h" 3
#define _STRPTIME 
         extern char *strptime(const char *, const char *, struct tm *);
# 449 "/usr/include/sys/time.h" 3
#define _TIMEZONE 
       extern long timezone;



#define _DAYLIGHT 
       extern int daylight;
# 482 "/usr/include/sys/time.h" 3
     extern int getitimer(int, struct itimerval *);
     extern int setitimer(int, const struct itimerval *, struct itimerval *);
     extern int utimes(const char *path, const struct timeval amtimes[2]);
     extern int gettimeofday(struct timeval *, void *);



       extern int select(int, fd_set *, fd_set *, fd_set *, struct timeval *);
# 512 "/usr/include/sys/time.h" 3
     extern int adjtime(const struct timeval *, struct timeval *);


#define _GETDATE 
       extern struct tm *getdate(const char *);



#define _GETDATE_R 





     extern int settimeofday(const struct timeval *, const struct timezone *);
     extern int stime(const time_t *);
     extern void profil(const void *, size_t, size_t, int);
# 550 "/usr/include/sys/time.h" 3
#define _GETDATE_ERR 





       extern int getdate_err;
# 579 "/usr/include/sys/time.h" 3
#define CLK_TCK 100
# 589 "/usr/include/sys/time.h" 3
#define ITIMER_REAL 0
#define ITIMER_VIRTUAL 1
#define ITIMER_PROF 2




#define ITIMER_THREAD_REAL 3
#define ITIMER_THREAD_VIRTUAL 4
#define ITIMER_THREAD_PROF 5
# 607 "/usr/include/sys/time.h" 3
    struct ki_timeval {
            uint32_t pad1;
            uint32_t pad2;
    };
# 625 "/usr/include/sys/time.h" 3
#define _KT_T 

typedef uint64_t kt_t;







#define DST_NONE 0
#define DST_USA 1
#define DST_AUST 2
#define DST_WET 3
#define DST_MET 4
#define DST_EET 5






#define timerisset(tvp) ((tvp)->tv_sec || (tvp)->tv_usec)
#define timercmp(tvp,uvp,cmp) ((tvp)->tv_sec cmp (uvp)->tv_sec || (tvp)->tv_sec == (uvp)->tv_sec && (tvp)->tv_usec cmp (uvp)->tv_usec)


#define timerclear(tvp) ((tvp)->tv_sec = (tvp)->tv_usec = 0L)
#define is_valid_timeval(tvp) ((tvp)->tv_usec >= 0L && (tvp)->tv_usec < 1000000L)
# 662 "/usr/include/sys/time.h" 3
#define timespeccmp(tsp1,tsp2,op) ((tsp1)->tv_sec op (tsp2)->tv_sec || ((tsp1)->tv_sec == (tsp2)->tv_sec && (tsp1)->tv_nsec op (tsp2)->tv_nsec))



#define timespeceq(tsp1,tsp2) ((tsp1)->tv_sec == (tsp2)->tv_sec && (tsp1)->tv_nsec == (tsp2)->tv_nsec)



#define timespecclear(tsp) ((tsp)->tv_sec = (tsp)->tv_nsec = 0L)

#define timespecisset(tsp) ((tsp)->tv_nsec || (tsp)->tv_sec)
# 27 "/usr/include/sys/resource.h" 2 3







#define __rlimit rlimit
#define _T_RLIM_T rlim_t



# 1 "/usr/include/sys/_rlimit_body.h" 1 3
# 12 "/usr/include/sys/_rlimit_body.h" 3
struct rlimit {
        rlim_t rlim_cur;
        rlim_t rlim_max;
};
# 40 "/usr/include/sys/resource.h" 2 3

#undef _T_RLIM_T
#undef __rlimit
# 75 "/usr/include/sys/resource.h" 3
#define PRIO_MIN -20
#define PRIO_MAX 20

#define PRIO_PROCESS 0
#define PRIO_PGRP 1
#define PRIO_USER 2





#define RUSAGE_SELF 0
#define RUSAGE_CHILDREN -1

struct rusage {
        struct timeval ru_utime;
        struct timeval ru_stime;

        long ru_maxrss;
#define ru_first ru_ixrss
        long ru_ixrss;
        long ru_idrss;
        long ru_isrss;
        long ru_minflt;
        long ru_majflt;
        long ru_nswap;
        long ru_inblock;
        long ru_oublock;
        long ru_ioch;
        long ru_msgsnd;
        long ru_msgrcv;
        long ru_nsignals;
        long ru_nvcsw;
        long ru_nivcsw;
#define ru_last ru_nivcsw
};
# 132 "/usr/include/sys/resource.h" 3
   extern int getpriority (int, id_t);
   extern int getrusage (int, struct rusage *);
   extern int setpriority (int, id_t, int);
   extern int getrlimit (int, struct rlimit *);
   extern int setrlimit (int, const struct rlimit *);
# 213 "/usr/include/sys/resource.h" 3
#define RLIM_INFINITY 0x7fffffff




#define RLIMIT_CPU 0
#define RLIMIT_DATA 2
#define RLIMIT_STACK 3
#define RLIMIT_RSS 5

#define RLIMIT_FSIZE 1
#define RLIMIT_CORE 4
#define RLIMIT_NOFILE 6
#define RLIMIT_OPEN_MAX RLIMIT_NOFILE
#define RLIMIT_AS 7
#define RLIMIT_TCACHE 8
#define RLIMIT_AIO_OPS 9
#define RLIMIT_AIO_MEM 10
#define RLIM_NLIMITS 11
# 84 "/usr/include/sys/wait.h" 2 3





#define WNOWAIT _WNOWAIT

#define WSTOPFLG 0177
# 102 "/usr/include/sys/wait.h" 3
           extern pid_t wait3(int *, int, struct rusage *);
# 123 "/usr/include/sys/wait.h" 3
# 1 "/usr/include/sys/signal.h" 1 3



#define _SYS_SIGNAL_INCLUDED 
# 16 "/usr/include/sys/signal.h" 3
# 1 "/usr/include/sys/siginfo.h" 1 3






#define _SYS_SIGINFO_INCLUDED 
# 19 "/usr/include/sys/siginfo.h" 3
enum __si_codes {
        SI_QUEUE = -2,
        SI_USER = -1,
        SI_TIMER = 1,
        SI_ASYNCIO= 2,
        SI_MESGQ = 3
};
# 38 "/usr/include/sys/siginfo.h" 3
typedef struct __siginfo {



        int si_signo;
        int si_code;
        int si_errno;
        sigval_t si_value;
        union {
                struct {
                        pid_t __pid;
                        union {
                                struct {
                                        uid_t __uid;
                                } __kill;
                                struct {
                                        int __status;
                                } __SIGCLD;
                        } __pdata;
                } __proc;
                struct {
                        void *__addr;
                } __fault;
                struct {
                        int __fd;
                        long __band;
                } __file;
                struct {
                        void *__addr;
                        void *__lockpage;
                        long __dev_id;
                } __gfault;
        } __data;
#define __SIGINFO_PAD 9
        long __pad[9];
} siginfo_t;

#define si_pid __data.__proc.__pid
#define si_uid __data.__proc.__pdata.__kill.__uid
#define si_status __data.__proc.__pdata.__SIGCLD.__status
#define si_addr __data.__fault.__addr
#define si_fd __data.__file.__fd
#define si_band __data.__file.__band
#define _si_gfaddr __data.__gfault.__addr
#define _si_gflockpage __data.__gfault.__lockpage
#define _si_gfdev_id __data.__gfault.__dev_id
# 106 "/usr/include/sys/siginfo.h" 3
#define ILL_UNKNOWN 0
#define ILL_ILLOPC 8
#define ILL_ILLBRKINST 9
#define ILL_PRVOPC 10
#define ILL_PRVREG 11


#define FPE_UNKNOWN 0
#define FPE_FLTOVF 12
#define FPE_COND 13
#define FPE_ASSISTX 14
#define FPE_ASSISTEM 22

#define SEGV_UNKNOWN 0
#define BUS_UNKNOWN 0
#define TRAP_UNKNOWN 0
#define SI_UNKNOWN 0





#define FPE_INTDIV 101
#define FPE_INTOVF 102
#define FPE_FLTDIV 103
#define FPE_FLTUND 104
#define FPE_FLTRES 105
#define FPE_FLTINV 106
#define FPE_FLTSUB 107

#define SEGV_MAPERR 108
#define SEGV_ACCERR 109

#define BUS_ADRALN 110
#define BUS_ADRERR 111
#define BUS_OBJERR 112

#define TRAP_BRKPT 113
#define TRAP_TRACE 114

#define ILL_ILLOPN 115
#define ILL_ILLADR 116
#define ILL_ILLTRP 117
#define ILL_COPROC 118
#define ILL_BADSTK 119

#define POLL_IN 120
#define POLL_OUT 121
#define POLL_MSG 122
#define POLL_ERR 123
#define POLL_PRI 124
#define POLL_HUP 125





#define GFAULT_EXPLICIT 201
#define GFAULT_IMPLICIT 202
# 17 "/usr/include/sys/signal.h" 2 3
# 1 "/usr/include/sys/newsig.h" 1 3






#define _SYS_NEWSIG_INCLUDED 
# 25 "/usr/include/sys/newsig.h" 3
     typedef struct __sigset_t {
          unsigned int sigset[8];
     } sigset_t;
# 43 "/usr/include/sys/newsig.h" 3
# 1 "/usr/include/machine/save_state.h" 1 3







#define _MACHINE_SAVE_STATE_INCLUDED 
# 184 "/usr/include/machine/save_state.h" 3
typedef struct __fp_dbl_block {

        double ss_fp0;
        double ss_fp1;
        double ss_fp2;
        double ss_fp3;
        double ss_fp4;
        double ss_fp5;
        double ss_fp6;
        double ss_fp7;
        double ss_fp8;
        double ss_fp9;
        double ss_fp10;
        double ss_fp11;
        double ss_fp12;
        double ss_fp13;
        double ss_fp14;
        double ss_fp15;
        double ss_fp16;
        double ss_fp17;
        double ss_fp18;
        double ss_fp19;
        double ss_fp20;
        double ss_fp21;
        double ss_fp22;
        double ss_fp23;
        double ss_fp24;
        double ss_fp25;
        double ss_fp26;
        double ss_fp27;
        double ss_fp28;
        double ss_fp29;
        double ss_fp30;
        double ss_fp31;
} fp_dbl_block_t;




typedef struct __fp_int_block {

        int ss_fpstat;
        int ss_fpexcept1;
        int ss_fpexcept2;
        int ss_fpexcept3;
        int ss_fpexcept4;
        int ss_fpexcept5;
        int ss_fpexcept6;
        int ss_fpexcept7;
        int ss_fp4_hi;
        int ss_fp4_lo;
        int ss_fp5_hi;
        int ss_fp5_lo;
        int ss_fp6_hi;
        int ss_fp6_lo;
        int ss_fp7_hi;
        int ss_fp7_lo;
        int ss_fp8_hi;
        int ss_fp8_lo;
        int ss_fp9_hi;
        int ss_fp9_lo;
        int ss_fp10_hi;
        int ss_fp10_lo;
        int ss_fp11_hi;
        int ss_fp11_lo;
        int ss_fp12_hi;
        int ss_fp12_lo;
        int ss_fp13_hi;
        int ss_fp13_lo;
        int ss_fp14_hi;
        int ss_fp14_lo;
        int ss_fp15_hi;
        int ss_fp15_lo;
        int ss_fp16_hi;
        int ss_fp16_lo;
        int ss_fp17_hi;
        int ss_fp17_lo;
        int ss_fp18_hi;
        int ss_fp18_lo;
        int ss_fp19_hi;
        int ss_fp19_lo;
        int ss_fp20_hi;
        int ss_fp20_lo;
        int ss_fp21_hi;
        int ss_fp21_lo;
        int ss_fp22_hi;
        int ss_fp22_lo;
        int ss_fp23_hi;
        int ss_fp23_lo;
        int ss_fp24_hi;
        int ss_fp24_lo;
        int ss_fp25_hi;
        int ss_fp25_lo;
        int ss_fp26_hi;
        int ss_fp26_lo;
        int ss_fp27_hi;
        int ss_fp27_lo;
        int ss_fp28_hi;
        int ss_fp28_lo;
        int ss_fp29_hi;
        int ss_fp29_lo;
        int ss_fp30_hi;
        int ss_fp30_lo;
        int ss_fp31_hi;
        int ss_fp31_lo;
} fp_int_block_t;
# 353 "/usr/include/machine/save_state.h" 3
typedef struct __reg64 {

        int64_t ss_reserved;
        int64_t ss_gr1;
        int64_t ss_rp;
        int64_t ss_gr3;
        int64_t ss_gr4;
        int64_t ss_gr5;
        int64_t ss_gr6;
        int64_t ss_gr7;
        int64_t ss_gr8;
        int64_t ss_gr9;
        int64_t ss_gr10;
        int64_t ss_gr11;
        int64_t ss_gr12;
        int64_t ss_gr13;
        int64_t ss_gr14;
        int64_t ss_gr15;
        int64_t ss_gr16;
        int64_t ss_gr17;
        int64_t ss_gr18;
        int64_t ss_gr19;
        int64_t ss_gr20;
        int64_t ss_gr21;
        int64_t ss_gr22;
        int64_t ss_arg3;
        int64_t ss_arg2;
        int64_t ss_arg1;
        int64_t ss_arg0;
        uint64_t ss_dp;
        uint64_t ss_ret0;
        uint64_t ss_ret1;
        uint64_t ss_sp;
        uint64_t ss_gr31;
        uint64_t ss_cr11;
        uint64_t ss_pcoq_head;
        uint64_t ss_pcsq_head;
        uint64_t ss_pcoq_tail;
        uint64_t ss_pcsq_tail;
        uint64_t ss_cr15;
        uint64_t ss_cr19;
        uint64_t ss_cr20;
        uint64_t ss_cr21;
        uint64_t ss_cr22;
        uint64_t ss_cpustate;
        uint64_t ss_sr4;
        uint64_t ss_sr0;
        uint64_t ss_sr1;
        uint64_t ss_sr2;
        uint64_t ss_sr3;
        uint64_t ss_sr5;
        uint64_t ss_sr6;
        uint64_t ss_sr7;
        uint64_t ss_cr0;
        uint64_t ss_cr8;
        uint64_t ss_cr9;
        uint64_t ss_cr10;
        uint64_t ss_cr12;
        uint64_t ss_cr13;
        uint64_t ss_cr24;
        uint64_t ss_cr25;
        uint64_t ss_cr26;
        uint64_t ss_cr27;
        uint64_t ss_reserved2[2];
        uint32_t ss_oldcksum;
        uint32_t ss_newcksum;



} __reg64_t;





typedef struct __reg32 {
        uint32_t ss_reserved[2];
        uint32_t ss_gr1_hi;
        uint32_t ss_gr1_lo;
        uint32_t ss_rp_hi;
        uint32_t ss_rp_lo;
        uint32_t ss_gr3_hi;
        uint32_t ss_gr3_lo;
        uint32_t ss_gr4_hi;
        uint32_t ss_gr4_lo;
        uint32_t ss_gr5_hi;
        uint32_t ss_gr5_lo;
        uint32_t ss_gr6_hi;
        uint32_t ss_gr6_lo;
        uint32_t ss_gr7_hi;
        uint32_t ss_gr7_lo;
        uint32_t ss_gr8_hi;
        uint32_t ss_gr8_lo;
        uint32_t ss_gr9_hi;
        uint32_t ss_gr9_lo;
        uint32_t ss_gr10_hi;
        uint32_t ss_gr10_lo;
        uint32_t ss_gr11_hi;
        uint32_t ss_gr11_lo;
        uint32_t ss_gr12_hi;
        uint32_t ss_gr12_lo;
        uint32_t ss_gr13_hi;
        uint32_t ss_gr13_lo;
        uint32_t ss_gr14_hi;
        uint32_t ss_gr14_lo;
        uint32_t ss_gr15_hi;
        uint32_t ss_gr15_lo;
        uint32_t ss_gr16_hi;
        uint32_t ss_gr16_lo;
        uint32_t ss_gr17_hi;
        uint32_t ss_gr17_lo;
        uint32_t ss_gr18_hi;
        uint32_t ss_gr18_lo;
        uint32_t ss_gr19_hi;
        uint32_t ss_gr19_lo;
        uint32_t ss_gr20_hi;
        uint32_t ss_gr20_lo;
        uint32_t ss_gr21_hi;
        uint32_t ss_gr21_lo;
        uint32_t ss_gr22_hi;
        uint32_t ss_gr22_lo;
        uint32_t ss_arg3_hi;
        uint32_t ss_arg3_lo;
        uint32_t ss_arg2_hi;
        uint32_t ss_arg2_lo;
        uint32_t ss_arg1_hi;
        uint32_t ss_arg1_lo;
        uint32_t ss_arg0_hi;
        uint32_t ss_arg0_lo;
        unsigned int ss_dp_hi;
        unsigned int ss_dp_lo;
        unsigned int ss_ret0_hi;
        unsigned int ss_ret0_lo;
        unsigned int ss_ret1_hi;
        unsigned int ss_ret1_lo;
        unsigned int ss_sp_hi;
        unsigned int ss_sp_lo;
        unsigned int ss_gr31_hi;
        unsigned int ss_gr31_lo;
        unsigned int ss_cr11_hi;
        unsigned int ss_cr11_lo;
        unsigned int ss_pcoq_head_hi;
        unsigned int ss_pcoq_head_lo;
        unsigned int ss_pcsq_head_hi;
        unsigned int ss_pcsq_head_lo;
        unsigned int ss_pcoq_tail_hi;
        unsigned int ss_pcoq_tail_lo;
        unsigned int ss_pcsq_tail_hi;
        unsigned int ss_pcsq_tail_lo;
        unsigned int ss_cr15_hi;
        unsigned int ss_cr15_lo;
        unsigned int ss_cr19_hi;
        unsigned int ss_cr19_lo;
        unsigned int ss_cr20_hi;
        unsigned int ss_cr20_lo;
        unsigned int ss_cr21_hi;
        unsigned int ss_cr21_lo;
        unsigned int ss_cr22_hi;
        unsigned int ss_cr22_lo;
        unsigned int ss_cpustate_hi;
        unsigned int ss_cpustate_lo;
        unsigned int ss_sr4_hi;
        unsigned int ss_sr4_lo;
        unsigned int ss_sr0_hi;
        unsigned int ss_sr0_lo;
        unsigned int ss_sr1_hi;
        unsigned int ss_sr1_lo;
        unsigned int ss_sr2_hi;
        unsigned int ss_sr2_lo;
        unsigned int ss_sr3_hi;
        unsigned int ss_sr3_lo;
        unsigned int ss_sr5_hi;
        unsigned int ss_sr5_lo;
        unsigned int ss_sr6_hi;
        unsigned int ss_sr6_lo;
        unsigned int ss_sr7_hi;
        unsigned int ss_sr7_lo;
        unsigned int ss_cr0_hi;
        unsigned int ss_cr0_lo;
        unsigned int ss_cr8_hi;
        unsigned int ss_cr8_lo;
        unsigned int ss_cr9_hi;
        unsigned int ss_cr9_lo;
        unsigned int ss_cr10_hi;
        unsigned int ss_cr10_lo;
        unsigned int ss_cr12_hi;
        unsigned int ss_cr12_lo;
        unsigned int ss_cr13_hi;
        unsigned int ss_cr13_lo;
        unsigned int ss_cr24_hi;
        unsigned int ss_cr24_lo;
        unsigned int ss_cr25_hi;
        unsigned int ss_cr25_lo;
        unsigned int ss_cr26_hi;
        unsigned int ss_cr26_lo;
        unsigned int ss_cr27_hi;
        unsigned int ss_cr27_lo;
        unsigned int ss_reserved2[4];
        unsigned int ss_oldcksum;
        unsigned int ss_newcksum;
} __reg32_t;




typedef struct __ss_narrow {

        int ss_gr1;
        int ss_rp;
        int ss_gr3;
        int ss_gr4;
        int ss_gr5;
        int ss_gr6;
        int ss_gr7;
        int ss_gr8;
        int ss_gr9;
        int ss_gr10;
        int ss_gr11;
        int ss_gr12;
        int ss_gr13;
        int ss_gr14;
        int ss_gr15;
        int ss_gr16;
        int ss_gr17;
        int ss_gr18;
        int ss_gr19;
        int ss_gr20;
        int ss_gr21;
        int ss_gr22;
        int ss_arg3;
        int ss_arg2;
        int ss_arg1;
        int ss_arg0;
        unsigned int ss_dp;
        unsigned int ss_ret0;
        unsigned int ss_ret1;
        unsigned int ss_sp;
        unsigned int ss_gr31;
        unsigned int ss_cr11;
        unsigned int ss_pcoq_head;
        unsigned int ss_pcsq_head;
        unsigned int ss_pcoq_tail;
        unsigned int ss_pcsq_tail;
        unsigned int ss_cr15;
        unsigned int ss_cr19;
        unsigned int ss_cr20;
        unsigned int ss_cr21;
        unsigned int ss_cr22;
        unsigned int ss_cpustate;
        unsigned int ss_sr4;
        unsigned int ss_sr0;
        unsigned int ss_sr1;
        unsigned int ss_sr2;
        unsigned int ss_sr3;
        unsigned int ss_sr5;
        unsigned int ss_sr6;
        unsigned int ss_sr7;
        unsigned int ss_cr0;
        unsigned int ss_cr8;
        unsigned int ss_cr9;
        unsigned int ss_cr10;
        unsigned int ss_cr12;
        unsigned int ss_cr13;
        unsigned int ss_cr24;
        unsigned int ss_cr25;
        unsigned int ss_cr26;
        unsigned int ss_cr27;
        unsigned int ss_mpsfu_low;
        unsigned int ss_mpsfu_ovflo;





} __ss_narrow_t;
# 636 "/usr/include/machine/save_state.h" 3
typedef struct __save_state {

        int ss_flags;
        __ss_narrow_t ss_narrow;
        int ss_pad;
        union {

                fp_dbl_block_t fpdbl;
                fp_int_block_t fpint;




        } ss_fpblock;
        char ss_xor[4*32];
        union {
# 679 "/usr/include/machine/save_state.h" 3
                __reg64_t ss_64;
                __reg32_t ss_32;
        } ss_wide;
} save_state_t;
# 838 "/usr/include/machine/save_state.h" 3
#define SS_INTRAP 0x01
#define SS_INSYSCALL 0x02
#define SS_ININT 0x04
#define SS_PSPKERNEL 0x08
#define SS_ARGSVALID 0x10
#define SS_DORFI 0x20
#define SS_WIDEREGS 0x40
#define SS_MODIFIEDWIDE 0x80
# 856 "/usr/include/machine/save_state.h" 3
#define SS_NARROWISINVALID 0x100
# 866 "/usr/include/machine/save_state.h" 3
#define KEEPERBITS (SS_WIDEREGS|SS_MODIFIEDWIDE|SS_NARROWISINVALID)
# 963 "/usr/include/machine/save_state.h" 3
#define ssoff(x) ((long)&((struct __save_state *)0L)->x)
#define ssoff_reg32(x) ((long)&((struct __save_state *)0L)->ss_wide.ss_32.x)
#define UseWideRegs(ssp) (((ssp)->ss_flags)&SS_WIDEREGS)





#define WideOrNarrowSSReg(ssp,ss_reg) WideOrNarrowSSReg32(ssp, ss_reg)






#define GetSSReg(ssp,reg) (WideOrNarrowSSReg(ssp, reg))
# 987 "/usr/include/machine/save_state.h" 3
#define SetSSReg(ssp,reg,v) (UseWideRegs(ssp) ? (((ssp)->ss_wide.ss_64.reg) = (v)) : (((ssp)->ss_narrow.reg) = (v)))
# 1000 "/usr/include/machine/save_state.h" 3
#define ModifySSReg(ssp,reg,op,v) (UseWideRegs(ssp) ? (((ssp)->ss_wide.ss_64.reg) op (v)) : (((ssp)->ss_narrow.reg) op (v)))






#define WideOrNarrowSSReg32(ssp,ss_reg) (UseWideRegs(ssp) ? (ssp)->ss_wide.ss_32.ss_reg ## _lo : (ssp)->ss_narrow.ss_reg)
# 1045 "/usr/include/machine/save_state.h" 3
#define ss_gr2 ss_rp
#define ss_T3 ss_gr20
#define ss_T2 ss_gr21
#define ss_T1 ss_gr22
#define ss_gr23 ss_arg3
#define ss_gr24 ss_arg2
#define ss_gr25 ss_arg1
#define ss_gr26 ss_arg0
#define ss_gr27 ss_dp
#define ss_gr28 ss_ret0
#define ss_gr29 ss_ret1
#define ss_gr30 ss_sp
# 1065 "/usr/include/machine/save_state.h" 3
#define ss_rec ss_cr0
#define ss_pid1 ss_cr8
#define ss_pid2 ss_cr9
#define ss_ccr ss_cr10
#define ss_sar ss_cr11
#define ss_pid3 ss_cr12
#define ss_pid4 ss_cr13
#define ss_eiem ss_cr15
#define ss_iir ss_cr19
#define ss_isr ss_cr20
#define ss_ior ss_cr21
#define ss_ipsw ss_cr22
#define ss_pdir ss_cr24
#define ss_htbl ss_cr25
#define ss_htm ss_cr26
#define ss_tr2 ss_cr26
#define ss_tlsp ss_cr27
# 1123 "/usr/include/machine/save_state.h" 3
#define ss_fr0 ss_fpblock.fpdbl.ss_fp0
#define ss_fr1 ss_fpblock.fpdbl.ss_fp1
#define ss_fr2 ss_fpblock.fpdbl.ss_fp2
#define ss_fr3 ss_fpblock.fpdbl.ss_fp3
#define ss_fr4 ss_fpblock.fpdbl.ss_fp4
#define ss_fr5 ss_fpblock.fpdbl.ss_fp5
#define ss_fr6 ss_fpblock.fpdbl.ss_fp6
#define ss_fr7 ss_fpblock.fpdbl.ss_fp7
#define ss_fr8 ss_fpblock.fpdbl.ss_fp8
#define ss_fr9 ss_fpblock.fpdbl.ss_fp9
#define ss_fr10 ss_fpblock.fpdbl.ss_fp10
#define ss_fr11 ss_fpblock.fpdbl.ss_fp11
#define ss_fr12 ss_fpblock.fpdbl.ss_fp12
#define ss_fr13 ss_fpblock.fpdbl.ss_fp13
#define ss_fr14 ss_fpblock.fpdbl.ss_fp14
#define ss_fr15 ss_fpblock.fpdbl.ss_fp15
#define ss_fr16 ss_fpblock.fpdbl.ss_fp16
#define ss_fr17 ss_fpblock.fpdbl.ss_fp17
#define ss_fr18 ss_fpblock.fpdbl.ss_fp18
#define ss_fr19 ss_fpblock.fpdbl.ss_fp19
#define ss_fr20 ss_fpblock.fpdbl.ss_fp20
#define ss_fr21 ss_fpblock.fpdbl.ss_fp21
#define ss_fr22 ss_fpblock.fpdbl.ss_fp22
#define ss_fr23 ss_fpblock.fpdbl.ss_fp23
#define ss_fr24 ss_fpblock.fpdbl.ss_fp24
#define ss_fr25 ss_fpblock.fpdbl.ss_fp25
#define ss_fr26 ss_fpblock.fpdbl.ss_fp26
#define ss_fr27 ss_fpblock.fpdbl.ss_fp27
#define ss_fr28 ss_fpblock.fpdbl.ss_fp28
#define ss_fr29 ss_fpblock.fpdbl.ss_fp29
#define ss_fr30 ss_fpblock.fpdbl.ss_fp30
#define ss_fr31 ss_fpblock.fpdbl.ss_fp31
#define ss_frstat ss_fpblock.fpint.ss_fpstat
#define ss_frexcp1 ss_fpblock.fpint.ss_fpexcept1
#define ss_frexcp2 ss_fpblock.fpint.ss_fpexcept2
#define ss_frexcp3 ss_fpblock.fpint.ss_fpexcept3
#define ss_frexcp4 ss_fpblock.fpint.ss_fpexcept4
#define ss_frexcp5 ss_fpblock.fpint.ss_fpexcept5
#define ss_frexcp6 ss_fpblock.fpint.ss_fpexcept6
#define ss_frexcp7 ss_fpblock.fpint.ss_fpexcept7
#define ss_fr4_hi ss_fpblock.fpint.ss_fp4_hi
#define ss_fr4_lo ss_fpblock.fpint.ss_fp4_lo
#define ss_fr5_hi ss_fpblock.fpint.ss_fp5_hi
#define ss_fr5_lo ss_fpblock.fpint.ss_fp5_lo
#define ss_fr6_hi ss_fpblock.fpint.ss_fp6_hi
#define ss_fr6_lo ss_fpblock.fpint.ss_fp6_lo
#define ss_fr7_hi ss_fpblock.fpint.ss_fp7_hi
#define ss_fr7_lo ss_fpblock.fpint.ss_fp7_lo
#define ss_fr8_hi ss_fpblock.fpint.ss_fp8_hi
#define ss_fr8_lo ss_fpblock.fpint.ss_fp8_lo
#define ss_fr9_hi ss_fpblock.fpint.ss_fp9_hi
#define ss_fr9_lo ss_fpblock.fpint.ss_fp9_lo
#define ss_fr10_hi ss_fpblock.fpint.ss_fp10_hi
#define ss_fr10_lo ss_fpblock.fpint.ss_fp10_lo
#define ss_fr11_hi ss_fpblock.fpint.ss_fp11_hi
#define ss_fr11_lo ss_fpblock.fpint.ss_fp11_lo
#define ss_fr12_hi ss_fpblock.fpint.ss_fp12_hi
#define ss_fr12_lo ss_fpblock.fpint.ss_fp12_lo
#define ss_fr13_hi ss_fpblock.fpint.ss_fp13_hi
#define ss_fr13_lo ss_fpblock.fpint.ss_fp13_lo
#define ss_fr14_hi ss_fpblock.fpint.ss_fp14_hi
#define ss_fr14_lo ss_fpblock.fpint.ss_fp14_lo
#define ss_fr15_hi ss_fpblock.fpint.ss_fp15_hi
#define ss_fr15_lo ss_fpblock.fpint.ss_fp15_lo
#define ss_fr16_hi ss_fpblock.fpint.ss_fp16_hi
#define ss_fr16_lo ss_fpblock.fpint.ss_fp16_lo
#define ss_fr17_hi ss_fpblock.fpint.ss_fp17_hi
#define ss_fr17_lo ss_fpblock.fpint.ss_fp17_lo
#define ss_fr18_hi ss_fpblock.fpint.ss_fp18_hi
#define ss_fr18_lo ss_fpblock.fpint.ss_fp18_lo
#define ss_fr19_hi ss_fpblock.fpint.ss_fp19_hi
#define ss_fr19_lo ss_fpblock.fpint.ss_fp19_lo
#define ss_fr20_hi ss_fpblock.fpint.ss_fp20_hi
#define ss_fr20_lo ss_fpblock.fpint.ss_fp20_lo
#define ss_fr21_hi ss_fpblock.fpint.ss_fp21_hi
#define ss_fr21_lo ss_fpblock.fpint.ss_fp21_lo
#define ss_fr22_hi ss_fpblock.fpint.ss_fp22_hi
#define ss_fr22_lo ss_fpblock.fpint.ss_fp22_lo
#define ss_fr23_hi ss_fpblock.fpint.ss_fp23_hi
#define ss_fr23_lo ss_fpblock.fpint.ss_fp23_lo
#define ss_fr24_hi ss_fpblock.fpint.ss_fp24_hi
#define ss_fr24_lo ss_fpblock.fpint.ss_fp24_lo
#define ss_fr25_hi ss_fpblock.fpint.ss_fp25_hi
#define ss_fr25_lo ss_fpblock.fpint.ss_fp25_lo
#define ss_fr26_hi ss_fpblock.fpint.ss_fp26_hi
#define ss_fr26_lo ss_fpblock.fpint.ss_fp26_lo
#define ss_fr27_hi ss_fpblock.fpint.ss_fp27_hi
#define ss_fr27_lo ss_fpblock.fpint.ss_fp27_lo
#define ss_fr28_hi ss_fpblock.fpint.ss_fp28_hi
#define ss_fr28_lo ss_fpblock.fpint.ss_fp28_lo
#define ss_fr29_hi ss_fpblock.fpint.ss_fp29_hi
#define ss_fr29_lo ss_fpblock.fpint.ss_fp29_lo
#define ss_fr30_hi ss_fpblock.fpint.ss_fp30_hi
#define ss_fr30_lo ss_fpblock.fpint.ss_fp30_lo
#define ss_fr31_hi ss_fpblock.fpint.ss_fp31_hi
#define ss_fr31_lo ss_fpblock.fpint.ss_fp31_lo
# 1419 "/usr/include/machine/save_state.h" 3
#define ss_mdsfu_hi ss_mpsfu_high
#define ss_mdsfu_lo ss_mpsfu_low
#define ss_mdsfu_ov ss_mpsfu_ovflo
#define FP_TBIT 0x40
# 1435 "/usr/include/machine/save_state.h" 3
#define ss_gr2_hi ss_rp_hi
#define ss_T3_hi ss_gr20_hi
#define ss_T2_hi ss_gr21_hi
#define ss_T1_hi ss_gr22_hi
#define ss_gr23_hi ss_arg3_hi
#define ss_gr24_hi ss_arg2_hi
#define ss_gr25_hi ss_arg1_hi
#define ss_gr26_hi ss_arg0_hi
#define ss_gr27_hi ss_dp_hi
#define ss_gr28_hi ss_ret0_hi
#define ss_gr29_hi ss_ret1_hi
#define ss_gr30_hi ss_sp_hi
# 1455 "/usr/include/machine/save_state.h" 3
#define ss_sar_hi ss_cr11_hi
#define ss_eiem_hi ss_cr15_hi
#define ss_iir_hi ss_cr19_hi
#define ss_isr_hi ss_cr20_hi
#define ss_ior_hi ss_cr21_hi
#define ss_ipsw_hi ss_cr22_hi
#define ss_tlsp_hi ss_cr27_hi

#define ss_gr2_lo ss_rp_lo
#define ss_T3_lo ss_gr20_lo
#define ss_T2_lo ss_gr21_lo
#define ss_T1_lo ss_gr22_lo
#define ss_gr23_lo ss_arg3_lo
#define ss_gr24_lo ss_arg2_lo
#define ss_gr25_lo ss_arg1_lo
#define ss_gr26_lo ss_arg0_lo
#define ss_gr27_lo ss_dp_lo
#define ss_gr28_lo ss_ret0_lo
#define ss_gr29_lo ss_ret1_lo
#define ss_gr30_lo ss_sp_lo
# 1483 "/usr/include/machine/save_state.h" 3
#define ss_sar_lo ss_cr11_lo
#define ss_eiem_lo ss_cr15_lo
#define ss_iir_lo ss_cr19_lo
#define ss_isr_lo ss_cr20_lo
#define ss_ior_lo ss_cr21_lo
#define ss_ipsw_lo ss_cr22_lo
#define ss_tlsp_lo ss_cr27_lo
# 44 "/usr/include/sys/newsig.h" 2 3


   typedef struct __stack {
        void *ss_sp;
        int ss_flags;
        size_t ss_size;
   } stack_t;


typedef save_state_t mcontext_t;
# 62 "/usr/include/sys/newsig.h" 3
struct __sub_ctxt {
        struct __ucontext *__uc_link;



        sigset_t __uc_sigmask;


        stack_t __uc_stack;


};
typedef struct __sub_ctxt __sub_ctxt_t;



typedef struct __ucontext {
        mcontext_t uc_mcontext;
        int uc_spares[8];

        unsigned int uc_created_by_getcontext:1;
        unsigned int uc_reserved_flags:31;
        struct __sub_ctxt uc_subcontext;

} ucontext_t;

#define uc_link uc_subcontext.__uc_link
#define uc_sigmask uc_subcontext.__uc_sigmask
#define uc_stack uc_subcontext.__uc_stack
# 18 "/usr/include/sys/signal.h" 2 3





#define __harg int
# 41 "/usr/include/sys/signal.h" 3
  typedef unsigned int sig_atomic_t;
# 52 "/usr/include/sys/signal.h" 3
   struct sigaction {
      union {



              void (*__sa_sigaction)(int, siginfo_t *, void *);




#define sa_sigaction __handler.__sa_sigaction


              void (*__sa_handler)(int);
      } __handler;
#define sa_handler __handler.__sa_handler
      sigset_t sa_mask;


      int sa_flags;
   };






#define __PTHREAD_T 

typedef int pthread_t;
# 109 "/usr/include/sys/signal.h" 3
#define CLD_EXITED 1
#define CLD_KILLED 2
#define CLD_DUMPED 3
#define CLD_TRAPPED 4
#define CLD_STOPPED 5
#define CLD_CONTINUED 6

   struct sigstack {

        void *ss_sp;



        int ss_onstack;
   };
# 132 "/usr/include/sys/signal.h" 3
   struct sigvec {
      void (*sv_handler)(int);
      int sv_mask;
      int sv_flags;
   };

#define sv_onstack sv_flags
# 152 "/usr/include/sys/signal.h" 3
     extern void (*signal(int, void (*) (int)))(int);
     extern int raise(int);
# 162 "/usr/include/sys/signal.h" 3
     extern int kill(pid_t, int);
     extern int sigemptyset(sigset_t *);
     extern int sigfillset(sigset_t *);
     extern int sigaddset(sigset_t *, int);
     extern int sigdelset(sigset_t *, int);
     extern int sigismember(const sigset_t *, int);
     extern int sigaction(int, const struct sigaction *, struct sigaction *);
     extern int sigprocmask(int, const sigset_t *, sigset_t *);
     extern int sigsuspend(const sigset_t *);
     extern int sigpending(sigset_t *);
# 188 "/usr/include/sys/signal.h" 3
     extern int sigwait(const sigset_t *set, int *sig);

     extern int pthread_sigmask(int how, const sigset_t *set, sigset_t *oset);
     extern int pthread_kill(pthread_t thread, int sig);
# 204 "/usr/include/sys/signal.h" 3
     extern int sigwaitinfo(const sigset_t *set, siginfo_t *info);
     extern int sigtimedwait(const sigset_t *set, siginfo_t * info,
                             const struct timespec *timeout);
     extern int sigqueue(pid_t pid, int signo,
                         const union sigval value);
# 218 "/usr/include/sys/signal.h" 3
        extern void (*bsd_signal(int, void(*)(int)))(int);
        extern int killpg(pid_t, int);

        extern int sigstack(struct sigstack *, struct sigstack *);



        extern int sigaltstack(const stack_t *, stack_t *);
        extern int siginterrupt(int, int);
# 237 "/usr/include/sys/signal.h" 3
           extern void (*sigset(int, void (*)(int)))(int);
           extern int sighold(int);
           extern int sigrelse(int);
           extern int sigignore(int);
           extern int sigpause(int);
# 255 "/usr/include/sys/signal.h" 3
     extern long sigblock(long);
     extern long sigsetmask(long);
     extern int sigvector(int, const struct sigvec *, struct sigvec *);
     extern int (*ssignal(int, int (*) (int)))(int);



     extern ssize_t sigspace(ssize_t);
     extern int gsignal(int);
# 289 "/usr/include/sys/signal.h" 3
#define _SIGHUP 1
#define SIGINT 2
#define _SIGQUIT 3
#define SIGILL 4

#define _SIGTRAP 5
#define SIGABRT 6
#define _SIGIOT SIGABRT
#define _SIGEMT 7
#define SIGFPE 8
#define _SIGKILL 9
#define _SIGBUS 10
#define SIGSEGV 11
#define _SIGSYS 12
#define _SIGPIPE 13
#define _SIGALRM 14
#define SIGTERM 15
#define _SIGUSR1 16
#define _SIGUSR2 17
#define _SIGCHLD 18
#define _SIGCLD _SIGCHLD
#define _SIGPWR 19
#define _SIGVTALRM 20
#define _SIGPROF 21
#define _SIGIO 22
#define _SIGPOLL _SIGIO
#define _SIGWINCH 23
#define _SIGWINDOW _SIGWINCH
#define _SIGSTOP 24
#define _SIGTSTP 25
#define _SIGCONT 26
#define _SIGTTIN 27

#define _SIGTTOU 28

#define _SIGURG 29
#define _SIGLOST 30
#define _SIGRESERVE 31
#define _SIGDIL 32
#define _SIGXCPU 33
#define _SIGXFSZ 34
#define _SIGCANCEL 35
#define _SIGGFAULT 36
#define _SIGRTMIN 37
#define _SIGRTMAX 44
#define _RTSIG_MAX 8




#define SIGHUP _SIGHUP
#define SIGQUIT _SIGQUIT
#define SIGKILL _SIGKILL
#define SIGPIPE _SIGPIPE
#define SIGALRM _SIGALRM
#define SIGUSR1 _SIGUSR1
#define SIGUSR2 _SIGUSR2
#define SIGCHLD _SIGCHLD
#define SIGSTOP _SIGSTOP
#define SIGTSTP _SIGTSTP
#define SIGCONT _SIGCONT
#define SIGTTIN _SIGTTIN
#define SIGTTOU _SIGTTOU

        extern long ___sysconf(int);



#define SIGRTMIN ((int)___sysconf(10010))
#define SIGRTMAX ((int)___sysconf(10011))




#define SIGPROF _SIGPROF
#define SIGBUS _SIGBUS
#define SIGVTALRM _SIGVTALRM
#define SIGURG _SIGURG
#define SIGXCPU _SIGXCPU
#define SIGXFSZ _SIGXFSZ


#define SIGPOLL _SIGPOLL



#define SIGTRAP _SIGTRAP
#define SIGSYS _SIGSYS



#define SIGIOT _SIGIOT
#define SIGEMT _SIGEMT
#define SIGCLD _SIGCLD
#define SIGPWR _SIGPWR
#define SIGIO _SIGIO
#define SIGWINCH _SIGWINCH
#define SIGCANCEL _SIGCANCEL
#define SIGGFAULT _SIGGFAULT
#define SIGWINDOW _SIGWINCH

#define SIGLOST _SIGLOST

#define SIGDIL _SIGDIL
# 401 "/usr/include/sys/signal.h" 3
#define _NSIG 45





#define NSIG _NSIG






#define SIG_ERR ((void (*) (__harg))-1L)
# 425 "/usr/include/sys/signal.h" 3
#define SIG_DFL ((void (*) (__harg))0L)







#define SIG_IGN ((void (*) (__harg))1L)







#define SA_NOCLDSTOP 0x00000008


#define SA_SIGINFO 0x00000010



#define SA_ONSTACK 0x00000001
#define SA_RESETHAND 0x00000004


#define SA_NODEFER 0x00000020
#define SA_RESTART 0x00000040
#define SA_NOCLDWAIT 0x00000080



#define _SA_SIGGFAULT 0x00000100




#define SIG_BLOCK 000


#define SIG_UNBLOCK 001


#define SIG_SETMASK 002
# 478 "/usr/include/sys/signal.h" 3
#define MINSIGSTKSZ 8192
#define SIGSTKSZ 8192

#define SS_ONSTACK 0x00000001
#define SS_DISABLE 0x00000002
# 495 "/usr/include/sys/signal.h" 3
#define SIG_HOLD ((void (*)(__harg))3L)
# 506 "/usr/include/sys/signal.h" 3
#define _sigset_t __sigset_t

#define KILL_ALL_OTHERS ((pid_t) 0x7fff)



#define SV_ONSTACK SA_ONSTACK
#define SV_BSDSIG 0x00000002
#define SV_RESETHAND SA_RESETHAND







# 1 "/usr/include/sys/syscall.h" 1 3







#define _SYS_SYSCALL_INCLUDED 

#define SYS_NOTSYSCALL 0
# 23 "/usr/include/sys/syscall.h" 3
# 1 "/usr/include/sys/scall_define.h" 1 3
#define SYS_NOSYS 0
#define SYS_nosys 0
#define SYS_EXIT 1
#define SYS_exit 1
#define SYS_FORK 2
#define SYS_fork 2
#define SYS_READ 3
#define SYS_read 3
#define SYS_WRITE 4
#define SYS_write 4
#define SYS_OPEN 5
#define SYS_open 5
#define SYS_CLOSE 6
#define SYS_close 6
#define SYS_WAIT 7
#define SYS_wait 7
#define SYS_CREAT 8
#define SYS_creat 8
#define SYS_LINK 9
#define SYS_link 9
#define SYS_UNLINK 10
#define SYS_unlink 10
#define SYS_EXECV 11
#define SYS_execv 11
#define SYS_CHDIR 12
#define SYS_chdir 12
#define SYS_TIME 13
#define SYS_time 13
#define SYS_MKNOD 14
#define SYS_mknod 14
#define SYS_CHMOD 15
#define SYS_chmod 15
#define SYS_CHOWN 16
#define SYS_chown 16
#define SYS_BRK 17
#define SYS_brk 17
#define SYS_LCHMOD 18
#define SYS_lchmod 18
#define SYS_LSEEK 19
#define SYS_lseek 19
#define SYS_GETPID 20
#define SYS_getpid 20
#define SYS_MOUNT 21
#define SYS_mount 21
#define SYS_UMOUNT 22
#define SYS_umount 22
#define SYS_SETUID 23
#define SYS_setuid 23
#define SYS_GETUID 24
#define SYS_getuid 24
#define SYS_STIME 25
#define SYS_stime 25
#define SYS_PTRACE 26
#define SYS_ptrace 26
#define SYS_ALARM 27
#define SYS_alarm 27
#define SYS_CNX_LW_PMON_READ 28
#define SYS_cnx_lw_pmon_read 28
#define SYS_PAUSE 29
#define SYS_pause 29
#define SYS_UTIME 30
#define SYS_utime 30
#define SYS_STTY 31
#define SYS_stty 31
#define SYS_GTTY 32
#define SYS_gtty 32
#define SYS_ACCESS 33
#define SYS_access 33
#define SYS_NICE 34
#define SYS_nice 34
#define SYS_FTIME 35
#define SYS_ftime 35
#define SYS_SYNC 36
#define SYS_sync 36
#define SYS_KILL 37
#define SYS_kill 37
#define SYS_STAT 38
#define SYS_stat 38
#define SYS_SETPGRP3 39
#define SYS_setpgrp3 39
#define SYS_LSTAT 40
#define SYS_lstat 40
#define SYS_DUP 41
#define SYS_dup 41
#define SYS_PIPE 42
#define SYS_pipe 42
#define SYS_TIMES 43
#define SYS_times 43
#define SYS_PROFIL 44
#define SYS_profil 44
#define SYS_KI_CALL 45
#define SYS_ki_call 45
#define SYS_SETGID 46
#define SYS_setgid 46
#define SYS_GETGID 47
#define SYS_getgid 47
#define SYS_ACCT 51
#define SYS_acct 51
#define SYS_SET_USERTHREADID 52
#define SYS_set_userthreadid 52
#define SYS_IOCTL 54
#define SYS_ioctl 54
#define SYS_REBOOT 55
#define SYS_reboot 55
#define SYS_SYMLINK 56
#define SYS_symlink 56
#define SYS_UTSSYS 57
#define SYS_utssys 57
#define SYS_READLINK 58
#define SYS_readlink 58
#define SYS_EXECVE 59
#define SYS_execve 59
#define SYS_UMASK 60
#define SYS_umask 60
#define SYS_CHROOT 61
#define SYS_chroot 61
#define SYS_FCNTL 62
#define SYS_fcntl 62
#define SYS_ULIMIT 63
#define SYS_ulimit 63
#define SYS_VFORK 66
#define SYS_vfork 66
#define SYS_LWP_GETPRIVATE 67
#define SYS_lwp_getprivate 67
#define SYS_LWP_SETPRIVATE 68
#define SYS_lwp_setprivate 68
#define SYS_MMAP 71
#define SYS_mmap 71
#define SYS_MUNMAP 73
#define SYS_munmap 73
#define SYS_MPROTECT 74
#define SYS_mprotect 74
#define SYS_MADVISE 75
#define SYS_madvise 75
#define SYS_VHANGUP 76
#define SYS_vhangup 76
#define SYS_SWAPOFF 77
#define SYS_swapoff 77
#define SYS_GETGROUPS 79
#define SYS_getgroups 79
#define SYS_SETGROUPS 80
#define SYS_setgroups 80
#define SYS_GETPGRP2 81
#define SYS_getpgrp2 81
#define SYS_SETPGID 82
#define SYS_setpgid 82
#define SYS_SETPGRP2 82
#define SYS_setpgrp2 82
#define SYS_SETITIMER 83
#define SYS_setitimer 83
#define SYS_WAIT3 84
#define SYS_wait3 84
#define SYS_SWAPON 85
#define SYS_swapon 85
#define SYS_GETITIMER 86
#define SYS_getitimer 86
#define SYS_DUP2 90
#define SYS_dup2 90
#define SYS_FSTAT 92
#define SYS_fstat 92
#define SYS_SELECT 93
#define SYS_select 93
#define SYS_FSYNC 95
#define SYS_fsync 95
#define SYS_SETPRIORITY 96
#define SYS_setpriority 96
#define SYS_GETPRIORITY 100
#define SYS_getpriority 100
#define SYS_LF_SEND 103
#define SYS_lf_send 103
#define SYS_SIGVECTOR 108
#define SYS_sigvector 108
#define SYS_SIGBLOCK 109
#define SYS_sigblock 109
#define SYS_SIGSETMASK 110
#define SYS_sigsetmask 110
#define SYS_SIGPAUSE 111
#define SYS_sigpause 111
#define SYS_SIGSTACK 112
#define SYS_sigstack 112
#define SYS_GETTIMEOFDAY 116
#define SYS_gettimeofday 116
#define SYS_GETRUSAGE 117
#define SYS_getrusage 117
#define SYS_READV 120
#define SYS_readv 120
#define SYS_WRITEV 121
#define SYS_writev 121
#define SYS_SETTIMEOFDAY 122
#define SYS_settimeofday 122
#define SYS_FCHOWN 123
#define SYS_fchown 123
#define SYS_FCHMOD 124
#define SYS_fchmod 124
#define SYS_SETRESUID 126
#define SYS_setresuid 126
#define SYS_SETRESGID 127
#define SYS_setresgid 127
#define SYS_RENAME 128
#define SYS_rename 128
#define SYS_TRUNCATE 129
#define SYS_truncate 129
#define SYS_FTRUNCATE 130
#define SYS_ftruncate 130
#define SYS_SYSCONF 132
#define SYS_sysconf 132
#define SYS_MKDIR 136
#define SYS_mkdir 136
#define SYS_RMDIR 137
#define SYS_rmdir 137
#define SYS_SIGCLEANUP 139
#define SYS_sigcleanup 139
#define SYS_SETCORE 140
#define SYS_setcore 140
#define SYS_GETRLIMIT 144
#define SYS_getrlimit 144
#define SYS_SETRLIMIT 145
#define SYS_setrlimit 145
#define SYS_LWP_SELF 147
#define SYS_lwp_self 147
#define SYS_QUOTACTL 148
#define SYS_quotactl 148
#define SYS_GET_SYSINFO 149
#define SYS_get_sysinfo 149
#define SYS_PRIVGRP 151
#define SYS_privgrp 151
#define SYS_RTPRIO 152
#define SYS_rtprio 152
#define SYS_PLOCK 153
#define SYS_plock 153
#define SYS_LF_NEXT_SCN 154
#define SYS_lf_next_scn 154
#define SYS_LOCKF 155
#define SYS_lockf 155
#define SYS_SEMGET 156
#define SYS_semget 156
#define SYS_SEMOP 158
#define SYS_semop 158
#define SYS_MSGGET 159
#define SYS_msgget 159
#define SYS_MSGSND 161
#define SYS_msgsnd 161
#define SYS_MSGRCV 162
#define SYS_msgrcv 162
#define SYS_SHMGET 163
#define SYS_shmget 163
#define SYS_SHMAT 165
#define SYS_shmat 165
#define SYS_SHMDT 166
#define SYS_shmdt 166
#define SYS__SET_MEM_WINDOW 167
#define SYS__set_mem_window 167
#define SYS_NSP_INIT 168
#define SYS_nsp_init 168
#define SYS_MKRNOD 170
#define SYS_mkrnod 170
#define SYS_TEST 171
#define SYS_test 171
#define SYS_UNSP_OPEN 172
#define SYS_unsp_open 172
#define SYS_OGETCONTEXT 174
#define SYS_ogetcontext 174
#define SYS_OSETCONTEXT 175
#define SYS_osetcontext 175
#define SYS_BIGIO 176
#define SYS_bigio 176
#define SYS_PIPENODE 177
#define SYS_pipenode 177
#define SYS_LSYNC 178
#define SYS_lsync 178
#define SYS_MYSITE 180
#define SYS_mysite 180
#define SYS_SITELS 181
#define SYS_sitels 181
#define SYS_SWAPCLIENTS 182
#define SYS_swapclients 182
#define SYS_RMTPROCESS 183
#define SYS_rmtprocess 183
#define SYS_DSKLESS_STATS 184
#define SYS_dskless_stats 184
#define SYS_SIGPROCMASK 185
#define SYS_sigprocmask 185
#define SYS_SIGPENDING 186
#define SYS_sigpending 186
#define SYS_SIGSUSPEND 187
#define SYS_sigsuspend 187
#define SYS_SIGACTION 188
#define SYS_sigaction 188
#define SYS_LW_GET_THREAD_TIMES 189
#define SYS_lw_get_thread_times 189
#define SYS_NFSSVC 190
#define SYS_nfssvc 190
#define SYS_GETFH 191
#define SYS_getfh 191
#define SYS_GETDOMAINNAME 192
#define SYS_getdomainname 192
#define SYS_SETDOMAINNAME 193
#define SYS_setdomainname 193
#define SYS_ASYNC_DAEMON 194
#define SYS_async_daemon 194
#define SYS_GETDIRENTRIES 195
#define SYS_getdirentries 195
#define SYS_STATFS 196
#define SYS_statfs 196
#define SYS_FSTATFS 197
#define SYS_fstatfs 197
#define SYS_VFSMOUNT 198
#define SYS_vfsmount 198
#define SYS_QMML 199
#define SYS_qmml 199
#define SYS_WAITPID 200
#define SYS_waitpid 200
#define SYS_SIGSETRETURN 224
#define SYS_sigsetreturn 224
#define SYS_SIGSETSTATEMASK 225
#define SYS_sigsetstatemask 225
#define SYS_CS 227
#define SYS_cs 227
#define SYS_CDS 228
#define SYS_cds 228
#define SYS_SET_NO_TRUNC 229
#define SYS_set_no_trunc 229
#define SYS_PATHCONF 230
#define SYS_pathconf 230
#define SYS_FPATHCONF 231
#define SYS_fpathconf 231
#define SYS_NFS_FCNTL 234
#define SYS_nfs_fcntl 234
#define SYS_OGETACL 235
#define SYS_ogetacl 235
#define SYS_OFGETACL 236
#define SYS_ofgetacl 236
#define SYS_OSETACL 237
#define SYS_osetacl 237
#define SYS_OFSETACL 238
#define SYS_ofsetacl 238
#define SYS_PSTAT 239
#define SYS_pstat 239
#define SYS_GETAUDID 240
#define SYS_getaudid 240
#define SYS_SETAUDID 241
#define SYS_setaudid 241
#define SYS_GETAUDPROC 242
#define SYS_getaudproc 242
#define SYS_SETAUDPROC 243
#define SYS_setaudproc 243
#define SYS_GETEVENT 244
#define SYS_getevent 244
#define SYS_SETEVENT 245
#define SYS_setevent 245
#define SYS_AUDWRITE 246
#define SYS_audwrite 246
#define SYS_AUDSWITCH 247
#define SYS_audswitch 247
#define SYS_AUDCTL 248
#define SYS_audctl 248
#define SYS_OGETACCESS 249
#define SYS_ogetaccess 249
#define SYS_FSCTL 250
#define SYS_fsctl 250
#define SYS_SWAPFS 259
#define SYS_swapfs 259
#define SYS_FSS 260
#define SYS_fss 260
#define SYS_TSYNC 267
#define SYS_tsync 267
#define SYS_GETNUMFDS 268
#define SYS_getnumfds 268
#define SYS_POLL 269
#define SYS_poll 269
#define SYS_GETMSG 270
#define SYS_getmsg 270
#define SYS_PUTMSG 271
#define SYS_putmsg 271
#define SYS_FCHDIR 272
#define SYS_fchdir 272
#define SYS_GETMOUNT_CNT 273
#define SYS_getmount_cnt 273
#define SYS_GETMOUNT_ENTRY 274
#define SYS_getmount_entry 274
#define SYS_ACCEPT 275
#define SYS_accept 275
#define SYS_BIND 276
#define SYS_bind 276
#define SYS_CONNECT 277
#define SYS_connect 277
#define SYS_GETPEERNAME 278
#define SYS_getpeername 278
#define SYS_GETSOCKNAME 279
#define SYS_getsockname 279
#define SYS_GETSOCKOPT 280
#define SYS_getsockopt 280
#define SYS_LISTEN 281
#define SYS_listen 281
#define SYS_RECV 282
#define SYS_recv 282
#define SYS_RECVFROM 283
#define SYS_recvfrom 283
#define SYS_RECVMSG 284
#define SYS_recvmsg 284
#define SYS_SEND 285
#define SYS_send 285
#define SYS_SENDMSG 286
#define SYS_sendmsg 286
#define SYS_SENDTO 287
#define SYS_sendto 287
#define SYS_SETSOCKOPT 288
#define SYS_setsockopt 288
#define SYS_SHUTDOWN 289
#define SYS_shutdown 289
#define SYS_SOCKET 290
#define SYS_socket 290
#define SYS_SOCKETPAIR 291
#define SYS_socketpair 291
#define SYS_PROC_OPEN 292
#define SYS_proc_open 292
#define SYS_PROC_CLOSE 293
#define SYS_proc_close 293
#define SYS_PROC_SEND 294
#define SYS_proc_send 294
#define SYS_PROC_RECV 295
#define SYS_proc_recv 295
#define SYS_PROC_SENDRECV 296
#define SYS_proc_sendrecv 296
#define SYS_PROC_SYSCALL 297
#define SYS_proc_syscall 297
#define SYS_SEMCTL 312
#define SYS_semctl 312
#define SYS_MSGCTL 313
#define SYS_msgctl 313
#define SYS_SHMCTL 314
#define SYS_shmctl 314
#define SYS_MPCTL 315
#define SYS_mpctl 315
#define SYS_EXPORTFS 316
#define SYS_exportfs 316
#define SYS_GETPMSG 317
#define SYS_getpmsg 317
#define SYS_PUTPMSG 318
#define SYS_putpmsg 318
#define SYS_MSYNC 320
#define SYS_msync 320
#define SYS_MSLEEP 321
#define SYS_msleep 321
#define SYS_MWAKEUP 322
#define SYS_mwakeup 322
#define SYS_MSEM_INIT 323
#define SYS_msem_init 323
#define SYS_MSEM_REMOVE 324
#define SYS_msem_remove 324
#define SYS_ADJTIME 325
#define SYS_adjtime 325
#define SYS_KLOAD 326
#define SYS_kload 326
#define SYS_FATTACH 327
#define SYS_fattach 327
#define SYS_FDETACH 328
#define SYS_fdetach 328
#define SYS_SERIALIZE 329
#define SYS_serialize 329
#define SYS_STATVFS 330
#define SYS_statvfs 330
#define SYS_FSTATVFS 331
#define SYS_fstatvfs 331
#define SYS_LCHOWN 332
#define SYS_lchown 332
#define SYS_GETSID 333
#define SYS_getsid 333
#define SYS_SYSFS 334
#define SYS_sysfs 334
#define SYS_SCHED_SETPARAM 337
#define SYS_sched_setparam 337
#define SYS_SCHED_GETPARAM 338
#define SYS_sched_getparam 338
#define SYS_SCHED_SETSCHEDULER 339
#define SYS_sched_setscheduler 339
#define SYS_SCHED_GETSCHEDULER 340
#define SYS_sched_getscheduler 340
#define SYS_SCHED_YIELD 341
#define SYS_sched_yield 341
#define SYS_SCHED_GET_PRIORITY_MAX 342
#define SYS_sched_get_priority_max 342
#define SYS_SCHED_GET_PRIORITY_MIN 343
#define SYS_sched_get_priority_min 343
#define SYS_SCHED_RR_GET_INTERVAL 344
#define SYS_sched_rr_get_interval 344
#define SYS_CLOCK_SETTIME 345
#define SYS_clock_settime 345
#define SYS_CLOCK_GETTIME 346
#define SYS_clock_gettime 346
#define SYS_CLOCK_GETRES 347
#define SYS_clock_getres 347
#define SYS_TIMER_CREATE 348
#define SYS_timer_create 348
#define SYS_TIMER_DELETE 349
#define SYS_timer_delete 349
#define SYS_TIMER_SETTIME 350
#define SYS_timer_settime 350
#define SYS_TIMER_GETTIME 351
#define SYS_timer_gettime 351
#define SYS_TIMER_GETOVERRUN 352
#define SYS_timer_getoverrun 352
#define SYS_NANOSLEEP 353
#define SYS_nanosleep 353
#define SYS_TOOLBOX 354
#define SYS_toolbox 354
#define SYS_GETDENTS 356
#define SYS_getdents 356
#define SYS_GETCONTEXT 357
#define SYS_getcontext 357
#define SYS_SYSINFO 358
#define SYS_sysinfo 358
#define SYS_FCNTL64 359
#define SYS_fcntl64 359
#define SYS_FTRUNCATE64 360
#define SYS_ftruncate64 360
#define SYS_FSTAT64 361
#define SYS_fstat64 361
#define SYS_GETDIRENTRIES64 362
#define SYS_getdirentries64 362
#define SYS_GETRLIMIT64 363
#define SYS_getrlimit64 363
#define SYS_LOCKF64 364
#define SYS_lockf64 364
#define SYS_LSEEK64 365
#define SYS_lseek64 365
#define SYS_LSTAT64 366
#define SYS_lstat64 366
#define SYS_MMAP64 367
#define SYS_mmap64 367
#define SYS_SETRLIMIT64 368
#define SYS_setrlimit64 368
#define SYS_STAT64 369
#define SYS_stat64 369
#define SYS_TRUNCATE64 370
#define SYS_truncate64 370
#define SYS_ULIMIT64 371
#define SYS_ulimit64 371
#define SYS_PREAD 372
#define SYS_pread 372
#define SYS_PREADV 373
#define SYS_preadv 373
#define SYS_PWRITE 374
#define SYS_pwrite 374
#define SYS_PWRITEV 375
#define SYS_pwritev 375
#define SYS_PREAD64 376
#define SYS_pread64 376
#define SYS_PREADV64 377
#define SYS_preadv64 377
#define SYS_PWRITE64 378
#define SYS_pwrite64 378
#define SYS_PWRITEV64 379
#define SYS_pwritev64 379
#define SYS_SETCONTEXT 380
#define SYS_setcontext 380
#define SYS_SIGALTSTACK 381
#define SYS_sigaltstack 381
#define SYS_WAITID 382
#define SYS_waitid 382
#define SYS_SETPGRP 383
#define SYS_setpgrp 383
#define SYS_RECVMSG2 384
#define SYS_recvmsg2 384
#define SYS_SENDMSG2 385
#define SYS_sendmsg2 385
#define SYS_SOCKET2 386
#define SYS_socket2 386
#define SYS_SOCKETPAIR2 387
#define SYS_socketpair2 387
#define SYS_SETREGID 388
#define SYS_setregid 388
#define SYS_LWP_CREATE 389
#define SYS_lwp_create 389
#define SYS_LWP_TERMINATE 390
#define SYS_lwp_terminate 390
#define SYS_LWP_WAIT 391
#define SYS_lwp_wait 391
#define SYS_LWP_SUSPEND 392
#define SYS_lwp_suspend 392
#define SYS_LWP_RESUME 393
#define SYS_lwp_resume 393
#define SYS_LWP_ABORT_SYSCALL 395
#define SYS_lwp_abort_syscall 395
#define SYS_LWP_INFO 396
#define SYS_lwp_info 396
#define SYS_LWP_KILL 397
#define SYS_lwp_kill 397
#define SYS_KSLEEP 398
#define SYS_ksleep 398
#define SYS_KWAKEUP 399
#define SYS_kwakeup 399
#define SYS_PSTAT_GETLWP 401
#define SYS_pstat_getlwp 401
#define SYS_LWP_EXIT 402
#define SYS_lwp_exit 402
#define SYS_LWP_CONTINUE 403
#define SYS_lwp_continue 403
#define SYS_GETACL 404
#define SYS_getacl 404
#define SYS_FGETACL 405
#define SYS_fgetacl 405
#define SYS_SETACL 406
#define SYS_setacl 406
#define SYS_FSETACL 407
#define SYS_fsetacl 407
#define SYS_GETACCESS 408
#define SYS_getaccess 408
#define SYS_LWP_MUTEX_INIT 409
#define SYS_lwp_mutex_init 409
#define SYS_LWP_MUTEX_LOCK_SYS 410
#define SYS_lwp_mutex_lock_sys 410
#define SYS_LWP_MUTEX_UNLOCK 411
#define SYS_lwp_mutex_unlock 411
#define SYS_LWP_COND_INIT 412
#define SYS_lwp_cond_init 412
#define SYS_LWP_COND_SIGNAL 413
#define SYS_lwp_cond_signal 413
#define SYS_LWP_COND_BROADCAST 414
#define SYS_lwp_cond_broadcast 414
#define SYS_LWP_COND_WAIT_SYS 415
#define SYS_lwp_cond_wait_sys 415
#define SYS_LWP_GETSCHEDULER 416
#define SYS_lwp_getscheduler 416
#define SYS_LWP_SETSCHEDULER 417
#define SYS_lwp_setscheduler 417
#define SYS_LWP_GETSTATE 418
#define SYS_lwp_getstate 418
#define SYS_LWP_SETSTATE 419
#define SYS_lwp_setstate 419
#define SYS_LWP_DETACH 420
#define SYS_lwp_detach 420
#define SYS_MLOCK 421
#define SYS_mlock 421
#define SYS_MUNLOCK 422
#define SYS_munlock 422
#define SYS_MLOCKALL 423
#define SYS_mlockall 423
#define SYS_MUNLOCKALL 424
#define SYS_munlockall 424
#define SYS_SHM_OPEN 425
#define SYS_shm_open 425
#define SYS_SHM_UNLINK 426
#define SYS_shm_unlink 426
#define SYS_SIGQUEUE 427
#define SYS_sigqueue 427
#define SYS_SIGWAITINFO 428
#define SYS_sigwaitinfo 428
#define SYS_SIGTIMEDWAIT 429
#define SYS_sigtimedwait 429
#define SYS_SIGWAIT 430
#define SYS_sigwait 430
#define SYS_AIO_READ 431
#define SYS_aio_read 431
#define SYS_AIO_WRITE 432
#define SYS_aio_write 432
#define SYS_LIO_LISTIO 433
#define SYS_lio_listio 433
#define SYS_AIO_ERROR 434
#define SYS_aio_error 434
#define SYS_AIO_RETURN 435
#define SYS_aio_return 435
#define SYS_AIO_CANCEL 436
#define SYS_aio_cancel 436
#define SYS_AIO_SUSPEND 437
#define SYS_aio_suspend 437
#define SYS_AIO_FSYNC 438
#define SYS_aio_fsync 438
#define SYS_MQ_OPEN 439
#define SYS_mq_open 439
#define SYS_MQ_CLOSE 440
#define SYS_mq_close 440
#define SYS_MQ_UNLINK 441
#define SYS_mq_unlink 441
#define SYS_MQ_SEND 442
#define SYS_mq_send 442
#define SYS_MQ_RECEIVE 443
#define SYS_mq_receive 443
#define SYS_MQ_NOTIFY 444
#define SYS_mq_notify 444
#define SYS_MQ_SETATTR 445
#define SYS_mq_setattr 445
#define SYS_MQ_GETATTR 446
#define SYS_mq_getattr 446
#define SYS_KSEM_OPEN 447
#define SYS_ksem_open 447
#define SYS_KSEM_UNLINK 448
#define SYS_ksem_unlink 448
#define SYS_KSEM_CLOSE 449
#define SYS_ksem_close 449
#define SYS_KSEM_POST 450
#define SYS_ksem_post 450
#define SYS_KSEM_WAIT 451
#define SYS_ksem_wait 451
#define SYS_KSEM_READ 452
#define SYS_ksem_read 452
#define SYS_KSEM_TRYWAIT 453
#define SYS_ksem_trywait 453
#define SYS_LWP_RWLOCK_INIT 454
#define SYS_lwp_rwlock_init 454
#define SYS_LWP_RWLOCK_DESTROY 455
#define SYS_lwp_rwlock_destroy 455
#define SYS_LWP_RWLOCK_RDLOCK_SYS 456
#define SYS_lwp_rwlock_rdlock_sys 456
#define SYS_LWP_RWLOCK_WRLOCK_SYS 457
#define SYS_lwp_rwlock_wrlock_sys 457
#define SYS_LWP_RWLOCK_TRYRDLOCK 458
#define SYS_lwp_rwlock_tryrdlock 458
#define SYS_LWP_RWLOCK_TRYWRLOCK 459
#define SYS_lwp_rwlock_trywrlock 459
#define SYS_LWP_RWLOCK_UNLOCK 460
#define SYS_lwp_rwlock_unlock 460
#define SYS_TTRACE 461
#define SYS_ttrace 461
#define SYS_TTRACE_WAIT 462
#define SYS_ttrace_wait 462
#define SYS_LF_WIRE_MEM 463
#define SYS_lf_wire_mem 463
#define SYS_LF_UNWIRE_MEM 464
#define SYS_lf_unwire_mem 464
#define SYS_LF_SEND_PIN_MAP 465
#define SYS_lf_send_pin_map 465
#define SYS_LF_FREE_BUF 466
#define SYS_lf_free_buf 466
#define SYS_LF_WAIT_NQ 467
#define SYS_lf_wait_nq 467
#define SYS_LF_WAKEUP_CONN_Q 468
#define SYS_lf_wakeup_conn_q 468
#define SYS_LF_UNUSED 469
#define SYS_lf_unused 469
#define SYS_LWP_SEMA_INIT 470
#define SYS_lwp_sema_init 470
#define SYS_LWP_SEMA_POST 471
#define SYS_lwp_sema_post 471
#define SYS_LWP_SEMA_WAIT 472
#define SYS_lwp_sema_wait 472
#define SYS_LWP_SEMA_TRYWAIT 473
#define SYS_lwp_sema_trywait 473
#define SYS_LWP_SEMA_DESTROY 474
#define SYS_lwp_sema_destroy 474
#define SYS_STATVFS64 475
#define SYS_statvfs64 475
#define SYS_FSTATVFS64 476
#define SYS_fstatvfs64 476
#define SYS_MSH_REGISTER 477
#define SYS_msh_register 477
#define SYS_PTRACE64 478
#define SYS_ptrace64 478
#define SYS_SENDFILE 479
#define SYS_sendfile 479
#define SYS_SENDPATH 480
#define SYS_sendpath 480
#define SYS_SENDFILE64 481
#define SYS_sendfile64 481
#define SYS_SENDPATH64 482
#define SYS_sendpath64 482
#define SYS_MODLOAD 483
#define SYS_modload 483
#define SYS_MODULOAD 484
#define SYS_moduload 484
#define SYS_MODPATH 485
#define SYS_modpath 485
#define SYS_GETKSYM 486
#define SYS_getksym 486
#define SYS_MODADM 487
#define SYS_modadm 487
#define SYS_MODSTAT 488
#define SYS_modstat 488
#define SYS_LWP_DETACHED_EXIT 489
#define SYS_lwp_detached_exit 489
#define SYS_CRASHCONF 490
#define SYS_crashconf 490
#define SYS_SIGINHIBIT 491
#define SYS_siginhibit 491
#define SYS_SIGENABLE 492
#define SYS_sigenable 492
#define SYS_SPUCTL 493
#define SYS_spuctl 493
#define SYS_ZEROKERNELSUM 494
#define SYS_zerokernelsum 494
#define SYS_NFS_KSTAT 495
#define SYS_nfs_kstat 495
#define SYS_AIO_READ64 496
#define SYS_aio_read64 496
#define SYS_AIO_WRITE64 497
#define SYS_aio_write64 497
#define SYS_AIO_ERROR64 498
#define SYS_aio_error64 498
#define SYS_AIO_RETURN64 499
#define SYS_aio_return64 499
#define SYS_AIO_CANCEL64 500
#define SYS_aio_cancel64 500
#define SYS_AIO_SUSPEND64 501
#define SYS_aio_suspend64 501
#define SYS_AIO_FSYNC64 502
#define SYS_aio_fsync64 502
#define SYS_LIO_LISTIO64 503
#define SYS_lio_listio64 503
#define SYS_RECV2 504
#define SYS_recv2 504
#define SYS_RECVFROM2 505
#define SYS_recvfrom2 505
#define SYS_SEND2 506
#define SYS_send2 506
#define SYS_SENDTO2 507
#define SYS_sendto2 507
#define SYS_ACL 508
#define SYS_acl 508
#define SYS___CNX_P2P_CTL 509
#define SYS___cnx_p2p_ctl 509
#define SYS___CNX_GSCHED_CTL 510
#define SYS___cnx_gsched_ctl 510
#define SYS___CNX_PMON_CTL 511
#define SYS___cnx_pmon_ctl 511
# 24 "/usr/include/sys/syscall.h" 2 3







#define LW_SYSCALL_OFF_MS 0x1
#define LW_SYSCALL_OFF_KI 0x2
#define LW_SYSCALL_OFF_AUDIT 0x4
#define LW_SYSCALL_OFF_MI LW_SYSCALL_OFF_KI
#define LW_SYSCALL_OFF_MP 0x8
# 44 "/usr/include/sys/syscall.h" 3
#define NUMARGINREGS 4
# 53 "/usr/include/sys/syscall.h" 3
#define SYS_CN r22
#define sys_CN SYS_CN

#define RS r22
#define sys_RS RS

#define ss_rs ss_gr22
#define ss_rs_hi ss_gr22_hi






#define GATEWAYSID 0x0



#define SYSCALLGATE 0xc0000004L



#define SCF_INCR SS_SIZE+FM_SIZE+16
#define SCF_DECR -SS_SIZE-FM_SIZE-16
# 523 "/usr/include/sys/signal.h" 2 3
# 1 "/usr/include/machine/frame.h" 1 3







#define _MACHINE_FRAME_INCLUDED 
# 54 "/usr/include/machine/frame.h" 3
typedef struct frame_marker {
        int fm_edp;
        int fm_esr4;
        int fm_erp;
        int fm_crp;
        int fm_sl;
        int fm_clup;
        int fm_ep;
        int fm_psp;
} frame_marker_t;
# 74 "/usr/include/machine/frame.h" 3
#define NUMARGREGS 4


#define NUMARGREGS32 4
#define NUMARGREGS64 8





#define sptofm(sp) (((struct frame_marker *)(sp))-1)
# 101 "/usr/include/machine/frame.h" 3
#define sptoarg(sp,i) (((int *)sptofm(sp))-1-(i))
# 126 "/usr/include/machine/frame.h" 3
#define FM_SIZE 32

#define FM_SIZE32 32
#define FM_SIZE64 16
# 152 "/usr/include/machine/frame.h" 3
#define FM_PSP -4
#define FM_EP -8
#define FM_CLUP -12
#define FM_SL -16
#define FM_CRP -20
#define FM_ERP -24
#define FM_ESR4 -28
#define FM_EDP -32
# 524 "/usr/include/sys/signal.h" 2 3
# 536 "/usr/include/sys/signal.h" 3
       struct siglocal_misc {
                int sm_syscall;
                int sm_onstack;
                int sm_omask;
                char sm_syscall_action;
                char sm_eosys;
                unsigned short sm_error;
                long sm_rval1;
                long sm_rval2;
                long sm_arg[4];
       };
       typedef struct siglocal_misc siglocal_misc_t;

       struct siglocal {
                struct siglocal_misc sl_misc;
                save_state_t sl_ss;
       };
# 568 "/usr/include/sys/signal.h" 3
       struct siglocalx {
                struct siglocal_misc sl_misc;
                ucontext_t sl_uc;
                siginfo_t sl_si;
       };
# 588 "/usr/include/sys/signal.h" 3
        struct __xsi {
                struct __sub_ctxt sc;

                int __padding;



                siginfo_t si;
        };
        typedef struct __xsi __xsi_t;
# 606 "/usr/include/sys/signal.h" 3
       struct sigcontext {

                union {
                        struct siglocal sl;
                        struct siglocalx sx;
                } sc_ctxt;







                long sc_args[4];




                struct frame_marker sc_sfm;


       };
# 636 "/usr/include/sys/signal.h" 3
#define _TOS_TO_SIGCONTEXTP(tos) ((struct sigcontext *)(*((unsigned int *)((unsigned int)(tos) + FM_PSP))))


#define SC_SIZE (sizeof(struct sigcontext))
#define sc_sl sc_ctxt.sl
#define sc_sx sc_ctxt.sx
#define sc_uc sc_ctxt.sx.sl_uc
#define sc_si sc_ctxt.sx.sl_si
#define sc_syscall sc_sl.sl_misc.sm_syscall
#define sc_onstack sc_sl.sl_misc.sm_onstack
#define sc_mask sc_sx.sl_uc.uc_sigmask.sigset[0]
#define sc_syscall_action sc_sl.sl_misc.sm_syscall_action

#define sc_eosys sc_sl.sl_misc.sm_eosys
#define sc_error sc_sl.sl_misc.sm_error
#define sc_rval1 sc_sl.sl_misc.sm_rval1
#define sc_rval2 sc_sl.sl_misc.sm_rval2
#define sc_arg sc_sl.sl_misc.sm_arg

#define sl_syscall sl_misc.sm_syscall
#define sl_onstack sl_misc.sm_onstack
#define sl_mask sl_uc.uc_sigmask.sigset[0]
#define sl_syscall_action sl_misc.sm_syscall_action
#define sl_eosys sl_misc.sm_eosys
#define sl_error sl_misc.sm_error
#define sl_rval1 sl_misc.sm_rval1
#define sl_rval2 sl_misc.sm_rval2
#define sl_arg sl_misc.sm_arg

#define sc_flags sc_sl.sl_ss.ss_flags
# 674 "/usr/include/sys/signal.h" 3
#define BADSIG ((void (*)(__harg))-1L)



#define SIG_RETURN 1
#define SIG_RESTART 0
# 688 "/usr/include/sys/signal.h" 3
#define sigmask(signo) (1L << (signo-1))
# 124 "/usr/include/sys/wait.h" 2 3



#define WSTOPPED 0x0008
#define WCONTINUED 0x0010
#define WEXITED 0x0020




#define WCONTFLG 0177777


#define _WAITIDMASK (WEXITED|WSTOPPED|WCONTINUED|WNOHANG|WNOWAIT)
#define _WAITMASK (WNOHANG | WUNTRACED | WNOWAIT |WCONTINUED)

#define WLOW2BYTES 0177777

#define WIFSIGNALED(_X) ((((_X)&0377)!=0)&&(((_X)&0377)!=WSTOPFLG) &&(((_X)&WLOW2BYTES)!=WCONTFLG))





#define WIFCONTINUED(_X) (( (_X) & WLOW2BYTES ) == WCONTFLG )



#define _IDTYPE_T 






typedef enum {
        P_PID,
        P_PGID,
        P_SID,
        P_UID,
        P_GID,
        P_CID,
        P_ALL
} idtype_t;
# 177 "/usr/include/sys/wait.h" 3
        extern int waitid(idtype_t, id_t, siginfo_t *, int);
# 195 "/usr/include/sys/wait.h" 3
   union wait {
        int w_status;



        struct {
                unsigned short w_pad;
                unsigned int w_Retcode:8;
                unsigned int w_Coredump:1;
                unsigned int w_Termsig:7;
        } w_T;





        struct {
                unsigned short w_pad;
                unsigned int w_Stopsig:8;
                unsigned int w_Stopval:8;
        } w_S;
   };
#define w_termsig w_T.w_Termsig
#define w_coredump w_T.w_Coredump
#define w_retcode w_T.w_Retcode
#define w_stopval w_S.w_Stopval
#define w_stopsig w_S.w_Stopsig

#define WCOREDUMP(_X) ((_X)&0200)
# 266 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/stdlib.h" 2 3


#define _MKTEMP_DEFINED 

                extern int mkstemp(char *);
                extern char *mktemp(char *);
                extern int ttyslot(void);
# 281 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/stdlib.h" 3
        extern long a64l(const char *);
        extern char *l64a(long);


       extern char *fcvt(double, int, int *, int *);
       extern char *ecvt(double, int, int *, int *);


        extern char *gcvt(double, int, char *);
        extern int getsubopt(char **, char * const *, char **);
        extern int grantpt(int);
        extern char *ptsname(int);
        extern char *realpath(const char *, char *);
        extern int unlockpt(int);
        extern void *valloc(size_t);
    extern char *initstate(unsigned int, char *, size_t);
    extern char *setstate(const char *);
    extern void srandom(unsigned int);
        extern long random(void);
# 321 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/stdlib.h" 3
#define M_MXFAST 1
#define M_NLBLKS 2
#define M_GRAIN 3

#define M_KEEP 4

#define M_BLOCK 5

#define M_UBLOCK 6

#define M_ENABLE_MMAP 7



#define _STRUCT_MALLINFO 


  struct mallinfo {
        int32_t arena;
        int32_t ordblks;
        int32_t smblks;
        int32_t hblks;
        int32_t hblkhd;
        int32_t usmblks;
        int32_t fsmblks;
        int32_t uordblks;
        int32_t fordblks;
        int32_t keepcost;
  };



#define _LONG_DOUBLE 
     typedef struct {
       uint32_t word1, word2, word3, word4;
     } long_double;




# 1 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/pwd.h" 1 3
# 13 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/pwd.h" 3
#define _PWD_INCLUDED 
# 29 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/pwd.h" 3
#define _NAMESPACE_STD_START 
#define _NAMESPACE_STD_END 
#define _hpux_size_t size_t
#define __time_t time_t
#define __FILE FILE
#define __wint_t wint_t
#define __struct_tm struct tm
#define __va__list va_list
# 48 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/pwd.h" 3
   struct passwd {
        char *pw_name;
        char *pw_passwd;
        uid_t pw_uid;
        gid_t pw_gid;
        char *pw_age;
        char *pw_comment;
        char *pw_gecos;
        char *pw_dir;
        char *pw_shell;
        int32_t pw_audid;
        int pw_audflg;
   };


     extern struct passwd *getpwuid(uid_t);
     extern struct passwd *getpwnam(const char *);
# 86 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/pwd.h" 3
     extern void endpwent(void);
     extern struct passwd *getpwent(void);
     extern void setpwent(void);
# 97 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/pwd.h" 3
   struct s_passwd {
       char *pw_name;
       char *pw_passwd;
       char *pw_age;
       int32_t pw_audid;
       int pw_audflg;
   };







         extern int putpwent(const struct passwd *, FILE *);
     extern struct passwd *fgetpwent(FILE *);
     extern struct s_passwd *getspwent(void);
     extern struct s_passwd *getspwuid(uid_t);
     extern struct s_passwd *getspwaid(int32_t);
     extern struct s_passwd *getspwnam(char *);
     extern struct s_passwd *fgetspwent(FILE *);
     extern void setspwent(void);
     extern void endspwent(void);
# 163 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/pwd.h" 3
#define UID_NOBODY (-2)
# 362 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/stdlib.h" 2 3






     extern char *_ldecvt(long_double, int, int *, int *);
     extern char *_ldfcvt(long_double, int, int *, int *);
     extern char *_ldgcvt(long_double, int, char *);
     extern int getpw(int, char *);
     extern void l3tol(long *, const char *, int);
     extern void ltol3(char *, const long *, int);
     extern char *ltostr(long, int);
     extern char *ultostr(unsigned long, int);
     extern char *ltoa(long);
     extern char *ultoa(unsigned long);
     extern void memorymap(int);
     extern struct mallinfo mallinfo(void);
     extern int mallopt(int, int);
     extern long_double strtold(const char *, char **);
# 55 "/auto/gabellin/prova/src/binutils-2.12/bfd/sysdep.h" 2




# 1 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/time.h" 1 3
# 12 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/time.h" 3
#define _TIME_INCLUDED 
# 26 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/time.h" 3
#define _NAMESPACE_STD_START 
#define _NAMESPACE_STD_END 
#define _hpux_size_t size_t
#define __time_t time_t
#define __FILE FILE
#define __wint_t wint_t
#define __struct_tm struct tm
#define __va__list va_list
# 46 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/time.h" 3
#define __INCLUDE_FROM_TIME_H 


#define _GET_EXPIRATION_TIME 

typedef int64_t hrtime_t;





extern hrtime_t gethrtime();

           extern int get_expiration_time (struct timespec *,struct timespec *);




#undef __INCLUDE_FROM_TIME_H
# 60 "/auto/gabellin/prova/src/binutils-2.12/bfd/sysdep.h" 2
# 69 "/auto/gabellin/prova/src/binutils-2.12/bfd/sysdep.h"
# 1 "/usr/include/unistd.h" 1 3


#define _UNISTD_INCLUDED 







# 1 "/usr/include/sys/unistd.h" 1 3






#define _SYS_UNISTD_INCLUDED 
# 65 "/usr/include/sys/unistd.h" 3
#define _LFS64_STDIO 1
#define _LFS64_ASYNCHRONOUS_IO 1
#define _LFS_ASYNCHRONOUS_IO 1
#define _LFS_LARGEFILE 1
#define _LFS64_LARGEFILE 1
# 83 "/usr/include/sys/unistd.h" 3
# 1 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/utime.h" 1 3
# 12 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/utime.h" 3
#define _UTIME_INCLUDED 
# 28 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/utime.h" 3
#define _NAMESPACE_STD_START 
#define _NAMESPACE_STD_END 
#define _hpux_size_t size_t
#define __time_t time_t
#define __FILE FILE
#define __wint_t wint_t
#define __struct_tm struct tm
#define __va__list va_list
# 49 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/utime.h" 3
# 1 "/usr/include/sys/_time_t.h" 1 3



#define _TIME_T_INCLUDED 
# 23 "/usr/include/sys/_time_t.h" 3
#define _NAMESPACE_STD_START 
#define _NAMESPACE_STD_END 
# 50 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/utime.h" 2 3


   struct utimbuf {
        time_t actime;
        time_t modtime;
   };



           extern int utime(const char *, const struct utimbuf *);
# 84 "/usr/include/sys/unistd.h" 2 3
# 95 "/usr/include/sys/unistd.h" 3
     extern void _exit (int);
     extern int access (const char *, int);
     extern int chdir (const char *);
     extern int chown (const char *, uid_t, gid_t);
     extern int close (int);
     extern char *ctermid (char *);
     extern char *cuserid (char *);
     extern int dup (int);
     extern int dup2 (int, int);
     extern int execl (const char *, const char *, ...);
     extern int execle (const char *, const char *, ...);
     extern int execlp (const char *, const char *, ...);
     extern int execv (const char *, char *const []);
     extern int execve (const char *, char *const [], char *const []);
     extern int execvp (const char *, char *const []);
     extern long fpathconf (int, int);
     extern char *getcwd (char *, size_t);
     extern int getgroups (int, gid_t []);
     extern char *getlogin (void);







     extern int isatty (int);
     extern int link (const char *, const char *);
     extern off_t lseek (int, off_t, int);
     extern long pathconf (const char *, int);
     extern int pause (void);
     extern int pipe (int *);
     extern ssize_t read (int, void *, size_t);
     extern ssize_t pread (int, void *, size_t, off_t);
     extern int rmdir (const char *);
     extern int setgid (gid_t);
     extern int setpgid (pid_t, pid_t);
     extern pid_t setsid (void);
     extern int setuid (uid_t);
     extern unsigned int sleep (unsigned int);
     extern long sysconf (int);
     extern pid_t tcgetpgrp (int);
     extern int tcsetpgrp (int, pid_t);
     extern char *ttyname (int);







     extern int unlink (const char *);
     extern ssize_t write (int, const void *, size_t);
     extern ssize_t pwrite (int, const void *, size_t, off_t);
# 162 "/usr/include/sys/unistd.h" 3
     extern unsigned int alarm (unsigned int);
     extern pid_t fork (void);
     extern gid_t getegid (void);
     extern uid_t geteuid (void);
     extern gid_t getgid (void);
     extern pid_t getpgrp (void);
     extern pid_t getpid (void);
     extern pid_t getppid (void);
     extern uid_t getuid (void);





     extern char *optarg;
     extern int opterr;
     extern int optind;
     extern int optopt;

     extern int getopt (int, char * const [], const char *);
     extern size_t confstr (int, char *, size_t);




     extern int pthread_atfork(void (*prepare)(), void (*parent)(),
                                                           void (*child)());







        extern int chroot (const char *);
        extern char *crypt (const char *, const char *);
        extern void encrypt (char [64], int);
        extern int fsync (int);
        extern char *getpass (const char *);
        extern int nice (int);

        extern int rename (const char *, const char *);


        extern void swab (const void *, void *, ssize_t);







     extern char **environ;



       extern int readlink (const char *, char *, size_t);



     extern int fchown (int, uid_t, gid_t);
     extern int ftruncate (int, off_t);
     extern int truncate (const char *, off_t);


       extern int setgroups (int, gid_t []);

     extern int symlink (const char *, const char *);




        extern pid_t setpgrp (void);
# 248 "/usr/include/sys/unistd.h" 3
        extern pid_t vfork (void);
# 263 "/usr/include/sys/unistd.h" 3
        extern int brk (void *);
        extern int fchdir (int);
        extern int getdtablesize (void);

        extern long gethostid (void);



        extern int gethostname (char *, size_t);
        extern int getpagesize (void);
        extern pid_t getpgid (pid_t);
        extern pid_t getsid (pid_t);
        extern char *getwd (char *);
        extern int lockf (int, int, off_t);
        extern int lchown (const char *, uid_t, gid_t);



        extern void *sbrk (int);

        extern int setregid (gid_t, gid_t);
        extern int setreuid (uid_t, uid_t);
        extern void sync (void);

        extern useconds_t ualarm (useconds_t, useconds_t);
        extern int usleep (useconds_t);







     extern void endusershell (void);
     extern int fsctl (int, int, void *, size_t);
     extern char *getcdf (const char *, char *, size_t);
     extern char *gethcwd (char *, size_t);
     extern int getpgrp2 (pid_t);
     extern char *getusershell (void);
     extern char *hidecdf (const char *, char *, size_t);
     extern int initgroups (const char *, gid_t);



     extern char *logname (void);
     extern void lsync (void);
     extern int prealloc (int, off_t);
     extern int sethostname (const char *, size_t);
     extern int setpgrp2 (pid_t, pid_t);
     extern int setresgid (gid_t, gid_t, gid_t);
     extern int setresuid (uid_t, uid_t, uid_t);
     extern void setusershell (void);
     extern long sgetl (const char *);
     extern void sputl (long, char *);
     extern int swapon (const char *, ...);
     extern int swapoff (const char *, int);
     extern char *ttyname (int);

     extern int64_t __sysconfx (int, int);
# 333 "/usr/include/sys/unistd.h" 3
     extern int set_userthreadid (int);
# 347 "/usr/include/sys/unistd.h" 3
           extern pid_t setpgrp3 (void);
# 412 "/usr/include/sys/unistd.h" 3
#define R_OK 4
#define W_OK 2
#define X_OK 1
#define F_OK 0
# 426 "/usr/include/sys/unistd.h" 3
#define _POSIX1_VERSION_88 198808L
#define _POSIX1_VERSION_90 199009L
#define _POSIX1_VERSION_93 199309L





#define _POSIX_VERSION _POSIX1_VERSION_90





#define STDIN_FILENO 0
#define STDOUT_FILENO 1
#define STDERR_FILENO 2


#define _POSIX_SAVED_IDS 1


#define _POSIX_JOB_CONTROL 2


#define _POSIX_VDISABLE 0xff

#define _POSIX_PRIORITY_SCHEDULING 1


#define _POSIX_TIMERS 1

#define _POSIX_SEMAPHORES 1

#define _POSIX_SYNCHRONIZED_IO 1

#define _POSIX_FSYNC 1



#define _POSIX_ASYNCHRONOUS_IO 1

#define _POSIX_MEMLOCK 1

#define _POSIX_MEMLOCK_RANGE 1

#define _POSIX_SHARED_MEMORY_OBJECTS 1

#define _POSIX_REALTIME_SIGNALS 1


#define _POSIX_MESSAGE_PASSING 1



#define _POSIX_THREAD_ATTR_STACKADDR 1

#define _POSIX_THREAD_ATTR_STACKSIZE 1

#define _POSIX_THREAD_PROCESS_SHARED 1

#define _POSIX_THREAD_SAFE_FUNCTIONS 1

#define _POSIX_THREAD_PRIORITY_SCHEDULING 1
# 511 "/usr/include/sys/unistd.h" 3
#define _SC_ARG_MAX 0

#define _SC_CHILD_MAX 1
#define _SC_CLK_TCK 2
#define _SC_NGROUPS_MAX 3

#define _SC_OPEN_MAX 4

#define _SC_JOB_CONTROL 5
#define _SC_SAVED_IDS 6
#define _SC_1_VERSION_88 7



#define _SC_STREAM_MAX 100
#define _SC_TZNAME_MAX 101
#define _SC_1_VERSION_90 102
#define _SC_1_VERSION_93 103







#define _SC_VERSION _SC_1_VERSION_90
# 545 "/usr/include/sys/unistd.h" 3
#define _SC_BC_BASE_MAX 200
#define _SC_BC_DIM_MAX 201
#define _SC_BC_SCALE_MAX 202
#define _SC_EXPR_NEST_MAX 204
#define _SC_LINE_MAX 205
#define _SC_RE_DUP_MAX 207
#define _SC_2_VERSION 211
#define _SC_2_C_BIND 212
#define _SC_2_C_DEV 213
#define _SC_2_FORT_DEV 214
#define _SC_2_SW_DEV 215
#define _SC_2_C_VERSION 216
#define _SC_2_CHAR_TERM 217
#define _SC_2_FORT_RUN 218
#define _SC_2_LOCALEDEF 219
#define _SC_2_UPE 220
#define _SC_BC_STRING_MAX 221
#define _SC_COLL_WEIGHTS_MAX 222


#define _SC_COLL_ELEM_MAX 203
#define _SC_PASTE_FILES_MAX 206
#define _SC_SED_PATTERN_MAX 208
#define _SC_SENDTO_MAX 209
#define _SC_SORT_LINE_MAX 210


#define _SC_TIMER_MAX 400
#define _SC_FSYNC 401
#define _SC_SYNCHRONIZED_IO 402
#define _SC_PRIORITY_SCHEDULING 403
#define _SC_TIMERS 404
#define _SC_DELAYTIMER_MAX 405

#define _SC_ASYNCHRONOUS_IO 406
#define _SC_MAPPED_FILES 407
#define _SC_MEMLOCK 408
#define _SC_MEMLOCK_RANGE 409
#define _SC_MEMORY_PROTECTION 410
#define _SC_MESSAGE_PASSING 411
#define _SC_PRIORITIZED_IO 412
#define _SC_REALTIME_SIGNALS 413
#define _SC_SEMAPHORES 414
#define _SC_SHARED_MEMORY_OBJECTS 415

#define _SC_AIO_LISTIO_MAX 416
#define _SC_AIO_MAX 417
#define _SC_AIO_PRIO_DELTA_MAX 418
#define _SC_MQ_OPEN_MAX 419
#define _SC_MQ_PRIO_MAX 420
#define _SC_RTSIG_MAX 421
#define _SC_SEM_NSEMS_MAX 422
#define _SC_SEM_VALUE_MAX 423
#define _SC_SIGQUEUE_MAX 424


#define _SC_THREAD_DESTRUCTOR_ITERATIONS 430


#define _SC_THREAD_KEYS_MAX 431

#define _SC_THREAD_STACK_MIN 432

#define _SC_THREAD_THREADS_MAX 433


#define _SC_THREADS 434

#define _SC_THREAD_ATTR_STACKADDR 435


#define _SC_THREAD_ATTR_STACKSIZE 436


#define _SC_THREAD_PRIORITY_SCHEDULING 437


#define _SC_THREAD_PRIO_INHERIT 438


#define _SC_THREAD_PRIO_PROTECT 439


#define _SC_THREAD_PROCESS_SHARED 440


#define _SC_THREAD_SAFE_FUNCTIONS 441


#define _SC_GETGR_R_SIZE_MAX 442

#define _SC_GETPW_R_SIZE_MAX 443

#define _SC_LOGIN_NAME_MAX 444
#define _SC_TTY_NAME_MAX 445
#define _SC_CACHE_LINE_SIZE 446




#define _SC_CLOCKS_PER_SEC 2000
#define _SC_XPG3_VERSION 8
#define _SC_XPG4_VERSION 2001
#define _SC_PASS_MAX 9
#define _SC_XOPEN_CRYPT 2002
#define _SC_XOPEN_ENH_I18N 2003
#define _SC_XOPEN_SHM 2004



#define _SC_XOPEN_VERSION _SC_XPG4_VERSION




#define _SC_XBS5_ILP32_OFF32 2005
#define _SC_XBS5_ILP32_OFFBIG 2006
#define _SC_XBS5_LP64_OFF64 2007
#define _SC_XBS5_LPBIG_OFFBIG 2008



#define _SC_AES_OS_VERSION 3000
#define _SC_PAGE_SIZE 3001
#define _SC_ATEXIT_MAX 3002


#define _SC_PAGESIZE _SC_PAGE_SIZE



#define _SC_SECURITY_CLASS 10000
#define _SC_CPU_VERSION 10001
#define _SC_IO_TYPE 10002
#define _SC_MSEM_LOCKID 10003
#define _SC_MCAS_OFFSET 10004
#define _SC_CPU_KEYBITS1 10005
#define _SC_PROC_RSRC_MGR 10006
#define _SC_SOFTPOWER 10007
#define _SC_EXEC_INTERPRETER_LENGTH 10008
#define _SC_SLVM_MAXNODES 10009
#define _SC_SIGRTMIN 10010
#define _SC_SIGRTMAX 10011
#define _SC_LIBC_VERSION 10012
#define _SC_KERNEL_BITS 10013
#define _SC_KERNEL_IS_BIGENDIAN 10014
#define _SC_HW_32_64_CAPABLE 10015

#define _SC_INT_MIN 10016
#define _SC_INT_MAX 10017
#define _SC_LONG_MIN 10018
#define _SC_LONG_MAX 10019
#define _SC_SSIZE_MAX 10020
#define _SC_WORD_BIT 10021
#define _SC_LONG_BIT 10022
#define _SC_CPU_CHIP_TYPE 10023



#define _PC_LINK_MAX 0

#define _PC_MAX_CANON 1

#define _PC_MAX_INPUT 2

#define _PC_NAME_MAX 3

#define _PC_PATH_MAX 4

#define _PC_PIPE_BUF 5

#define _PC_CHOWN_RESTRICTED 6

#define _PC_NO_TRUNC 7

#define _PC_VDISABLE 8




#define _PC_SYNC_IO 100


#define _PC_ASYNC_IO 101
#define _PC_PRIO_IO 102

#define _PC_FILESIZEBITS 103
# 742 "/usr/include/sys/unistd.h" 3
#define _XOPEN_VERSION 4
# 751 "/usr/include/sys/unistd.h" 3
#define _XOPEN_XPG4 1



#define _XOPEN_XCU_VERSION 3



#define _XOPEN_CRYPT 1
#define _XOPEN_ENH_I18N 1
# 770 "/usr/include/sys/unistd.h" 3
#define _AES_OS_VERSION 1







#define _POSIX2_VERSION 199209L
#define _POSIX2_C_VERSION 199209L

#define _POSIX2_C_BIND 1
#define _POSIX2_C_DEV 1L
#define _POSIX2_FORT_DEV -1L
#define _POSIX2_FORT_RUN -1L
#define _POSIX2_SW_DEV 1
#define _POSIX2_CHAR_TERM 1
#define _POSIX2_UPE 1L
#define _POSIX2_LOCALEDEF 1L




#define _XBS5_ILP32_OFF32 32
#define _XBS5_ILP32_OFFBIG 32
#define _XBS5_LP64_OFF64 64
#define _XBS5_LPBIG_OFFBIG 64



#define _CS_PATH 200






#define _CS_XBS5_ILP32_OFF32_CFLAGS 300
#define _CS_XBS5_ILP32_OFF32_LDFLAGS 301
#define _CS_XBS5_ILP32_OFF32_LIBS 302
#define _CS_XBS5_ILP32_OFF32_LINTFLAGS 303




#define _CS_XBS5_ILP32_OFFBIG_CFLAGS 304
#define _CS_XBS5_ILP32_OFFBIG_LDFLAGS 305
#define _CS_XBS5_ILP32_OFFBIG_LIBS 306
#define _CS_XBS5_ILP32_OFFBIG_LINTFLAGS 307




#define _CS_XBS5_LP64_OFF64_CFLAGS 308
#define _CS_XBS5_LP64_OFF64_LDFLAGS 309
#define _CS_XBS5_LP64_OFF64_LIBS 310
#define _CS_XBS5_LP64_OFF64_LINTFLAGS 311





#define _CS_XBS5_LPBIG_OFFBIG_CFLAGS 312
#define _CS_XBS5_LPBIG_OFFBIG_LDFLAGS 313
#define _CS_XBS5_LPBIG_OFFBIG_LIBS 314
#define _CS_XBS5_LPBIG_OFFBIG_LINTFLAGS 315



#define _CS_MACHINE_MODEL 10000
#define _CS_HW_CPU_SUPP_BITS 10001
#define _CS_KERNEL_BITS 10002







#define _XOPEN_UNIX -1

#define _XOPEN_CURSES 1





#define F_ULOCK 0
#define F_LOCK 1
#define F_TLOCK 2
#define F_TEST 3




#define _SC_IOV_MAX 2100
#define _SC_XOPEN_UNIX 2101






#define GF_PATH "/etc/group"
#define PF_PATH "/etc/passwd"
#define IN_PATH "/usr/include"




#define CS_PATH "/usr/bin:/usr/ccs/bin:/opt/ansic/bin:/opt/langtools/bin:/opt/fortran/bin"


#define CS_XBS5_ILP32_OFF32_CFLAGS ""
#define CS_XBS5_ILP32_OFF32_LDFLAGS ""
#define CS_XBS5_ILP32_OFF32_LIBS ""
#define CS_XBS5_ILP32_OFF32_LINTFLAGS ""
#define CS_XBS5_ILP32_OFFBIG_CFLAGS "-D_FILE_OFFSET_BITS=64"
#define CS_XBS5_ILP32_OFFBIG_LDFLAGS ""
#define CS_XBS5_ILP32_OFFBIG_LIBS ""
#define CS_XBS5_ILP32_OFFBIG_LINTFLAGS "-D_FILE_OFFSET_BITS=64"
#define CS_XBS5_LP64_OFF64_CFLAGS "+DA2.0W"
#define CS_XBS5_LP64_OFF64_LDFLAGS ""
#define CS_XBS5_LP64_OFF64_LIBS ""
#define CS_XBS5_LP64_OFF64_LINTFLAGS ""
#define CS_XBS5_LPBIG_OFFBIG_CFLAGS "+DA2.0W"
#define CS_XBS5_LPBIG_OFFBIG_LDFLAGS ""
#define CS_XBS5_LPBIG_OFFBIG_LIBS ""
#define CS_XBS5_LPBIG_OFFBIG_LINTFLAGS ""




#define SEC_CLASS_NONE 0
#define SEC_CLASS_C2 1
#define SEC_CLASS_B1 2



#define IO_TYPE_WSIO 01
#define IO_TYPE_SIO 02
#define IO_TYPE_CDIO 03



#define HARITH 0x00000010
#define HSHIFTADD 0x00000020
# 925 "/usr/include/sys/unistd.h" 3
#define CPU_HP_MC68020 0x20C
#define CPU_HP_MC68030 0x20D
#define CPU_HP_MC68040 0x20E
#define CPU_PA_RISC1_0 0x20B
#define CPU_PA_RISC1_1 0x210
#define CPU_PA_RISC1_2 0x211
#define CPU_PA_RISC2_0 0x214
#define CPU_PA_RISC_MAX 0x2FF



#define CPU_IS_PA_RISC(__x) ((__x) == CPU_PA_RISC1_0 || ((__x) >= CPU_PA_RISC1_1 && (__x) <= CPU_PA_RISC_MAX))





#define CPU_IS_HP_MC68K(__x) ((__x) == CPU_HP_MC68020 || (__x) == CPU_HP_MC68030 || (__x) == CPU_HP_MC68040)







#define _SYSTEM_SUPPORTS_LP64OS(__x) ((__x) & 0x1)
#define _SYSTEM_SUPPORTS_ILP32OS(__x) ((__x) & 0x2)






extern int serialize (int, pid_t);
# 12 "/usr/include/unistd.h" 2 3
# 70 "/auto/gabellin/prova/src/binutils-2.12/bfd/sysdep.h" 2





# 1 "/auto/gabellin/prova/src/binutils-2.12/include/fopen-same.h" 1
# 15 "/auto/gabellin/prova/src/binutils-2.12/include/fopen-same.h"
#define FOPEN_RB "r"
#define FOPEN_WB "w"
#define FOPEN_AB "a"
#define FOPEN_RUB "r+"
#define FOPEN_WUB "w+"
#define FOPEN_AUB "a+"

#define FOPEN_RT "r"
#define FOPEN_WT "w"
#define FOPEN_AT "a"
#define FOPEN_RUT "r+"
#define FOPEN_WUT "w+"
#define FOPEN_AUT "a+"
# 76 "/auto/gabellin/prova/src/binutils-2.12/bfd/sysdep.h" 2



# 1 "/usr/include/fcntl.h" 1 3


#define _FCNTL_INCLUDED 





# 1 "/usr/include/sys/fcntl.h" 1 3






#define _SYS_FCNTL_INCLUDED 
# 29 "/usr/include/sys/fcntl.h" 3
#define F_DUPFD 0
#define F_GETFD 1
#define F_SETFD 2
#define F_GETFL 3
#define F_SETFL 4


#define F_GETLK 5
#define F_SETLK 6
#define F_SETLKW 7
# 52 "/usr/include/sys/fcntl.h" 3
#define F_GETOWN 11
#define F_SETOWN 12



#define FD_CLOEXEC 1


#define F_RDLCK 01
#define F_WRLCK 02
#define F_UNLCK 03
# 75 "/usr/include/sys/fcntl.h" 3
#define O_RDONLY 0000000
#define O_WRONLY 0000001
#define O_RDWR 0000002
#define O_ACCMODE 0000003



#define O_CREAT 0000400
#define O_TRUNC 0001000
#define O_EXCL 0002000
#define O_NOCTTY 0400000





#define O_APPEND 0000010
#define O_NONBLOCK 0200000

#define O_SYNC 0100000
#define O_DSYNC 01000000
#define O_RSYNC 02000000



#define O_NDELAY 0000004
#define FSYNC O_SYNC
#define O_SYNCIO O_SYNC
#define FSYNCIO FSYNC
#define FDSYNC O_DSYNC
#define FRSYNC O_RSYNC

#define READSYNC(openflags) (((openflags) & FRSYNC) && ((openflags) & (FDSYNC|FSYNC)))





#define O_BLKSEEK 0000100
#define FBLKSEEK O_BLKSEEK
# 124 "/usr/include/sys/fcntl.h" 3
#define O_LARGEFILE 04000

#define FLARGEFILE O_LARGEFILE
# 157 "/usr/include/sys/fcntl.h" 3
#define __flock flock
#define _T_OFF_T off_t



# 1 "/usr/include/sys/_flock_body.h" 1 3
# 10 "/usr/include/sys/_flock_body.h" 3
   struct flock {
      short l_type;
      short l_whence;
      off_t l_start;
      off_t l_len;




      pid_t l_pid;


   };
# 163 "/usr/include/sys/fcntl.h" 2 3

#undef _T_OFF_T
#undef __flock
# 207 "/usr/include/sys/fcntl.h" 3
       extern int fcntl (int, int, ...);
       extern int creat (const char *, mode_t);


       extern int open (const char *, int, ...);
# 10 "/usr/include/fcntl.h" 2 3
# 80 "/auto/gabellin/prova/src/binutils-2.12/bfd/sysdep.h" 2
# 106 "/auto/gabellin/prova/src/binutils-2.12/bfd/sysdep.h"
# 1 "/auto/gabellin/prova/src/binutils-2.12/include/filenames.h" 1
# 27 "/auto/gabellin/prova/src/binutils-2.12/include/filenames.h"
#define FILENAMES_H 
# 45 "/auto/gabellin/prova/src/binutils-2.12/include/filenames.h"
#define IS_DIR_SEPARATOR(c) ((c) == '/')
#define IS_ABSOLUTE_PATH(f) (IS_DIR_SEPARATOR((f)[0]))
#define FILENAME_CMP(s1,s2) strcmp(s1, s2)
# 107 "/auto/gabellin/prova/src/binutils-2.12/bfd/sysdep.h" 2
# 135 "/auto/gabellin/prova/src/binutils-2.12/bfd/sysdep.h"
# 1 "../intl/libintl.h" 1
# 25 "../intl/libintl.h"
#define _LIBINTL_H 1

#define _LIBGETTEXT_H 1



#define __USE_GNU_GETTEXT 1




# 1 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/locale.h" 1 3
# 12 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/locale.h" 3
#define _LOCALE_INCLUDED 
# 28 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/locale.h" 3
#define _NAMESPACE_STD_START 
#define _NAMESPACE_STD_END 
#define _hpux_size_t size_t
#define __time_t time_t
#define __FILE FILE
#define __wint_t wint_t
#define __struct_tm struct tm
#define __va__list va_list







#define LC_ALL 0
#define LC_COLLATE 1
#define LC_CTYPE 2
#define LC_MONETARY 3
#define LC_NUMERIC 4
#define LC_TIME 5
#define LC_MESSAGES 6


# 1 "/usr/include/sys/_null.h" 1 3
# 53 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/locale.h" 2 3



  struct lconv {
        char *decimal_point;
        char *thousands_sep;
        char *grouping;
        char *int_curr_symbol;
        char *currency_symbol;
        char *mon_decimal_point;
        char *mon_thousands_sep;
        char *mon_grouping;
        char *positive_sign;
        char *negative_sign;
        char int_frac_digits;
        char frac_digits;
        char p_cs_precedes;
        char p_sep_by_space;
        char n_cs_precedes;
        char n_sep_by_space;
        char p_sign_posn;
        char n_sign_posn;
        };




     extern char *setlocale(int, const char *);
     extern struct lconv *localeconv(void);

# 98 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/locale.h" 3
# 1 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/limits.h" 1 3






#define _GCC_LIMITS_H_ 



# 1 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/syslimits.h" 1 3





#define _GCC_NEXT_LIMITS_H 
# 1 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/limits.h" 1 3
# 132 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/limits.h" 3
# 1 "/usr/include/limits.h" 1 3


#define _LIMITS_INCLUDED 






#define CHAR_BIT 8
#define CHAR_MAX 127
#define CHAR_MIN (-128)
#define MB_LEN_MAX 4
#define INT_MAX 2147483647
#define INT_MIN (-2147483647 - 1)




#define LONG_MAX 2147483647L
#define LONG_MIN (-2147483647L - 1)

#define SCHAR_MAX 127
#define SCHAR_MIN (-128)
#define SHRT_MAX 32767
#define SHRT_MIN (-32768)
#define UCHAR_MAX 255

#define UINT_MAX 4294967295U
# 41 "/usr/include/limits.h" 3
#define ULONG_MAX 4294967295UL




#define USHRT_MAX 65535







#define _POSIX_ARG_MAX 4096


#define _POSIX_CHILD_MAX 6

#define _POSIX_LINK_MAX 8
#define _POSIX_MAX_CANON 255

#define _POSIX_MAX_INPUT 255


#define _POSIX_NAME_MAX 14
#define _POSIX_NGROUPS_MAX 0


#define _POSIX_OPEN_MAX 16

#define _POSIX_PATH_MAX 255
#define _POSIX_PIPE_BUF 512


#define _POSIX_SSIZE_MAX 32767


#define _POSIX_TZNAME_MAX 3


#define _POSIX_STREAM_MAX 8


#define _POSIX_CLOCKRES_MIN 20000000
# 93 "/usr/include/limits.h" 3
#define NGROUPS_MAX 20




#define SSIZE_MAX LONG_MAX
# 108 "/usr/include/limits.h" 3
#define TZNAME_MAX 19
# 118 "/usr/include/limits.h" 3
#define _POSIX_DELAYTIMER_MAX 32
#define DELAYTIMER_MAX _POSIX_DELAYTIMER_MAX
#define _POSIX_TIMER_MAX 32
#define TIMER_MAX _POSIX_TIMER_MAX

#define _POSIX_AIO_LISTIO_MAX 2
#define _POSIX_AIO_MAX 1
#define _POSIX_MQ_OPEN_MAX 8
#define _POSIX_MQ_PRIO_MAX 32
#define _POSIX_RTSIG_MAX 8
#define RTSIG_MAX _POSIX_RTSIG_MAX
#define _POSIX_SEM_NSEMS_MAX 256
#define _POSIX_SEM_VALUE_MAX 32767
#define _POSIX_SIGQUEUE_MAX 32
#define SIGQUEUE_MAX _POSIX_SIGQUEUE_MAX





#define BC_BASE_MAX 99
#define BC_DIM_MAX 2048
#define BC_SCALE_MAX 99
#define BC_STRING_MAX 1000

#define COLL_WEIGHTS_MAX 4



#define EXPR_NEST_MAX 32

#define LINE_MAX 2048L


#define RE_DUP_MAX 255



#define _POSIX2_BC_BASE_MAX 99

#define _POSIX2_BC_DIM_MAX 2048


#define _POSIX2_BC_SCALE_MAX 99

#define _POSIX2_BC_STRING_MAX 1000


#define _POSIX2_COLL_WEIGHTS_MAX 2



#define _POSIX2_EXPR_NEST_MAX 32


#define _POSIX2_LINE_MAX 2048






#define _POSIX2_RE_DUP_MAX 255
# 202 "/usr/include/limits.h" 3
#define DBL_DIG 15



#define DBL_MAX 1.7976931348623157e+308




#define FLT_DIG 6



#define FLT_MAX ((float)3.40282347e+38)
# 228 "/usr/include/limits.h" 3
#define LONG_BIT 32

#define WORD_BIT 32
#define NL_LANGMAX (3*_POSIX_NAME_MAX+2)
#define NL_ARGMAX 9



#define NL_MSGMAX 65534
#define NL_NMAX 2


#define NL_SETMAX 65535

#define NL_TEXTMAX 8192
#define NZERO 20
#define PASS_MAX 8


#define _SYS_NMLN 9

#define CHARCLASS_NAME_MAX 255
# 259 "/usr/include/limits.h" 3
#define ARG_MAX 2048000


#define CHILD_MAX 25

#define OPEN_MAX 60
# 275 "/usr/include/limits.h" 3
#define LINK_MAX 32767
#define MAX_CANON 512

#define MAX_INPUT 512


#define NAME_MAX 14


#define PATH_MAX 1023

#define PIPE_BUF 8192
# 325 "/usr/include/limits.h" 3
#define ATEXIT_MAX 32




#define _XOPEN_IOV_MAX 16
#define IOV_MAX _XOPEN_IOV_MAX
# 341 "/usr/include/limits.h" 3
#define STREAM_MAX 60
# 353 "/usr/include/limits.h" 3
#define _POSIX_LOGIN_NAME_MAX 9





#define _POSIX_TTY_NAME_MAX 9




#define LOGIN_NAME_MAX 64




#define TTY_NAME_MAX 64






#define _POSIX_THREAD_DESTRUCTOR_ITERATIONS 4

#define PTHREAD_DESTRUCTOR_ITERATIONS _POSIX_THREAD_DESTRUCTOR_ITERATIONS




#define _POSIX_THREAD_KEYS_MAX 128

#define PTHREAD_KEYS_MAX _POSIX_THREAD_KEYS_MAX




#define PTHREAD_STACK_MIN 4096






# 1 "/usr/include/sys/param.h" 1 3



#define _SYS_PARAM_INCLUDED 
# 26 "/usr/include/sys/param.h" 3
# 1 "/usr/include/machine/param.h" 1 3





#define _MACHINE_PARAM_INCLUDED 





# 1 "/usr/include/sys/sysmacros.h" 1 3







#define _SYS_SYSMACROS_INCLUDED 
# 28 "/usr/include/sys/sysmacros.h" 3
#define itoo(fs,x) ((x) % INOPB(fs))
#define itog(fs,x) ((x) / (fs) -> fs_ipg)
#define itod(fs,x) ((daddr_t)(cgimin(fs, itog(fs, x)) + (blkstofrags((fs), (((x) % (fs) -> fs_ipg) / INOPB(fs))))))



#define btow(x) ((unsigned long)(x) >> BYTESHIFT)


#define major(x) ((int)(((unsigned)(x)>>24)&0xff))
#define bmajor(x) major(x)
#define brdev(x) (x)


#define minor(x) ((int)((x)&0xffffff))

#define MINOR_FORMAT "0x%06.6x"


#define makedev(x,y) ((dev_t)(((x)<<24) | (y & 0xffffff)))


#define m_selcode(x) (int)((unsigned)(x)>>16&0xff)

#define m_unit(x) (int)((unsigned)(x)>>4&0xf)
#define m_volume(x) (int)((unsigned)(x)&0xf)
#define M_DEVMASK (0xffff00)


#define makeminor(sc,f_num,drvr) ((long)((sc)<<16|(f_num)<<12|(drvr)))
# 67 "/usr/include/sys/sysmacros.h" 3
#define generic_mkminor(vs,ba,fn,options) (long) ((vs<<20) | (ba<<16) | (fn<<12) | (options))




#define m_vsc(x) (int)((unsigned)(x)>>20&0x0f)


#define m_slot(x) (int)((unsigned)(x)>>16&0xf)


#define m_funcnum(x) (int)((unsigned)(x)>>12&0xf)

#define m_busaddr(x) (int)((unsigned)(x)>>8&0xf)
# 13 "/usr/include/machine/param.h" 2 3
# 1 "/usr/include/machine/param_shm.h" 1 3






#define _MACHINE_PARAM_SHM_INCLUDED 
# 19 "/usr/include/machine/param_shm.h" 3
#define SHMLBA 4096
# 14 "/usr/include/machine/param.h" 2 3
# 27 "/usr/include/machine/param.h" 3
#define PGSHIFT 12
#define HPGSHIFT 12

#define NBPG (1<<PGSHIFT)
#define NBHPG (1<<HPGSHIFT)
#define PGOFSET (NBPG-1)
#define BYTESHIFT 2
#define PGNDXWDTH (32-PGSHIFT)

#define NBPG_PA83 2048


#define MAXPHYS (256 * 1024)

#define _BIG_ENDIAN 
# 51 "/usr/include/machine/param.h" 3
#define INDIRECT_PLABEL 0x02





#define KERN_ADDR 0x00000000L
#define SEGSIZE_32BIT 0x40000000L
#define QUAD1_32BIT_BEG_ADDR 0x00000000L
#define QUAD2_32BIT_BEG_ADDR 0x40000000L
#define QUAD3_32BIT_BEG_ADDR 0x80000000L
#define QUAD4_32BIT_BEG_ADDR 0xc0000000L


#define GVA_OFFSET_BITS 10
#define GVA_OFFSET_BITS_MASK 0x3ff
# 103 "/usr/include/machine/param.h" 3
#define QUAD1_64BIT_BEG_ADDR 0x00000000L
#define QUAD1_64BIT_END_ADDR 0x3ffff000L
#define QUAD2_64BIT_BEG_ADDR 0x40000000L
#define QUAD2_64BIT_END_ADDR 0x7ffff000L
#define QUAD3_64BIT_BEG_ADDR 0x80000000L
#define QUAD3_64BIT_END_ADDR 0xbffff000L
#define QUAD4_64BIT_BEG_ADDR 0xc0000000L
#define QUAD4_64BIT_END_ADDR 0xeffff000L
#define DATA_ADDR QUAD2_32BIT_BEG_ADDR
#define LASTV_32BIT_FRSTQUAD 0x3fffffff
#define FIRSTV_THIRDQUAD 0x80000000
#define LASTV_THIRDQUAD 0xbfffffff
#define SIZEV_THIRDQUAD SEGSIZE_32BIT
#define SEG_SIZE SEGSIZE_32BIT
# 143 "/usr/include/machine/param.h" 3
#define QUAD4_32BIT_BEG_FREE NBPG
# 302 "/usr/include/machine/param.h" 3
extern char *ustk_addr_q2_32bit;
extern char *ustk_addr_32bit;


#define UAREA_VIRT_PAGES 16
#define UAREA_SIZE (UAREA_VIRT_PAGES << PGSHIFT)
#define USRSTACK_MAX32BIT_Q2SHARED_ADDR QUAD2_32BIT_BEG_ADDR
#define RED_ZONE_PAGES 2
#define RED_ZONE_SIZE (RED_ZONE_PAGES << PGSHIFT)
#define DATA_MINPAGES 16384
#define DATA_MINSIZE (DATA_MINPAGES << PGSHIFT)
# 350 "/usr/include/machine/param.h" 3
#define UAREA (QUAD3_32BIT_BEG_ADDR - UAREA_SIZE)
#define USRSTACK_MAX32BIT_ADDR UAREA

#define USR_MAXSSIZ(vas) (is_q2shared(vas) ? (SEGSIZE_32BIT - (DATA_MINSIZE + RED_ZONE_SIZE)) : (SEGSIZE_32BIT - (DATA_MINSIZE + RED_ZONE_SIZE + UAREA_SIZE)))




#define USRSTACK_ADDR(vas) (is_q2shared(vas) ? ustk_addr_q2_32bit : ustk_addr_32bit)




#define USRSTACKMAX_ADDR(vas) (is_q2shared(vas) ? USRSTACK_MAX32BIT_Q2SHARED_ADDR : USRSTACK_MAX32BIT_ADDR)




#define USRDATA_STARTADDR(vas) (QUAD2_32BIT_BEG_ADDR)






#define LASTV_32BIT_ADDR 0xffffffffL




#define TOPKSTACK (UAREA+UPAGES*NBPG)


#define SHARED_32BIT_QUAD4_BEG (QUAD4_32BIT_BEG_ADDR + QUAD4_32BIT_BEG_FREE)
#define SHARED_32BIT_IO (SEGSIZE_32BIT/4)


#define SHARED_32BIT_QUAD4_END (QUAD4_32BIT_BEG_ADDR + (SEGSIZE_32BIT - SHARED_32BIT_IO))




#define KSTACKADDR (UAREA+sizeof(struct user)-sizeof(double))






#define btowr(x) (btow(((ulong_t)(x))+(WORD_SIZE-1)))

#define wtob(x) ( (ulong_t)(x) << BYTESHIFT )


#define DELAY(n) { register int N = (n); while (--N > 0); }
# 413 "/usr/include/machine/param.h" 3
#define LACC_PFAULT 1
#define LACC_NOPFAULT 0

#define lkernacc(sid,off,bcnt,rw) lacc((sid), (off), (bcnt), (rw), 0, LACC_PFAULT)

#define luseracc(sid,off,bcnt,rw) lacc((sid), (off), (bcnt), (rw), 3, LACC_PFAULT)

#define useracc(addr,bcnt,rw) lacc(ldusid(addr), (addr), (bcnt), (rw), 3, LACC_PFAULT)


#define useracc_nopfault(addr,bcnt,rw) lacc(ldusid(addr), (addr), (bcnt), (rw), 3, LACC_NOPFAULT)


#define kernacc(addr,bcnt,rw) acc((addr), (bcnt), (rw), 0)

#define fuibyte(base) fubyte(base)
#define fuiword(base) fuword(base)



#define ovbcopy bcopy
# 507 "/usr/include/machine/param.h" 3
#define CLIC 0
# 27 "/usr/include/sys/param.h" 2 3

# 1 "/usr/include/machine/spl.h" 1 3






#define SPL_INCLUDED 
# 80 "/usr/include/machine/spl.h" 3
# 1 "/usr/include/sys/kern_svcs.h" 1 3






#define _H_KERN_SVCS_H_INCLUDED 
# 81 "/usr/include/machine/spl.h" 2 3
# 29 "/usr/include/sys/param.h" 2 3







#define led0 0x01
#define led1 0x02
#define led2 0x04
#define led3 0x08
#define KERN_OK_LED 0x10
#define DISK_DRV_LED 0x20
#define LAN_RCV_LED 0x40
#define LAN_XMIT_LED 0x80



#define MAXINT 0x7fffffff



#define KERNELSPACE 0

#define MAXCOMLEN 14
#define NOFILE 60

#define TWO_GIG 2147483648LL

#define MAX_SMALL_FILE_BITS 32
#define MAX_LARGE_FILE_BITS 42

#define MAX_SMALL_FILE 0x7FFFFFFF
#define MAX_LARGE_FILE 0xFFFFFFFFFFLL
# 73 "/usr/include/sys/param.h" 3
#define MAX_LOCK_SIZE (uint32_t)(MAX_SMALL_FILE+1)


#define MAXPID 30000
#define MAXTID 30000
#define MAXUID MAXINT

#define OLD_MAXUID 60000



#define OLD_UID_NOBODY 65534

#define MAXLINK 0x7fff

#define MAX_CNODE 255


#define MAXHOSTNAMELEN 64


#define SSIZE 2
#define SINCR 2





#define CANBSIZ 256

#define HZ CLK_TCK






#define MAX_ALARM ((long)(0x7fffffff / HZ))
#define MAX_VTALARM ((long)(0x7fffffff))
#define MAX_PROF ((long)(0x7fffffff))







#define MAX_VT_ALARM (MAX_VTALARM)
# 133 "/usr/include/sys/param.h" 3
#define NCARGS 2048000






#define PMASK 0xffff
#define PCATCH 0x10000




#define PRTSCHEDBASE 0




#define MAX_RTSCHED_PRI 512




#define PRTBASE (PRTSCHEDBASE + MAX_RTSCHED_PRI)




#define PTIMESHARE (PRTBASE + 128)






#define PSWP (0+PTIMESHARE)
#define PMEM (0+PTIMESHARE)
#define PRIRWLOCK (5+PTIMESHARE)
#define PRIBETA (6+PTIMESHARE)
#define PRIALPHA (7+PTIMESHARE)
#define PRISYNC (8+PTIMESHARE)
#define PINOD (10+PTIMESHARE)
#define PRIBIO (20+PTIMESHARE)
#define PRIUBA (24+PTIMESHARE)
#define PLLIO (24+PTIMESHARE)
#define PZERO (25+PTIMESHARE)
#define IPCPRI (25+PTIMESHARE)





#define PPIPE (26+PTIMESHARE)
#define PVFS (27+PTIMESHARE)
#define PWAIT (30+PTIMESHARE)
#define PLOCK (35+PTIMESHARE)
#define PSLEP (40+PTIMESHARE)
#define PUSER (50+PTIMESHARE)




#define PMAX_TIMESHARE (127+PTIMESHARE)





#define PNOT_REALTIME (0x7FFF)




#define NZERO 20
#define MAXNICE (2 * NZERO - 1)
#define MINNICE 0






#define NBPW sizeof(int)
#define NBTSPW (NBBY*NBPW)

#define BSIZE DEV_BSIZE
#define BSHIFT DEV_BSHIFT




#define NINDIR(fs) ((fs)->fs_nindir)



#define INOPB(fs) ((fs)->fs_inopb)
#define INOPF(fs) ((fs)->fs_inopb >> (fs)->fs_fragshift)
# 243 "/usr/include/sys/param.h" 3
#define CMASK 0
#define CDLIMIT 0x1FFFFFFF
#define NODEV (dev_t)(-1)
#define SWDEF (dev_t)(-2)
# 256 "/usr/include/sys/param.h" 3
#define ROOTINO ((ino_t)2)
#define LOSTFOUNDINO (ROOTINO + 1)



#define PC_PRIV_MASK 3
#define PC_PRIV_KERN 0
#define PC_PRIV_USER 3

#define USERMODE(pc) (((pc) & PC_PRIV_MASK) != PC_PRIV_KERN)

#define lobyte(X) (((unsigned char *)&X)[1])
#define hibyte(X) (((unsigned char *)&X)[0])
#define loword(X) (((ushort *)&X)[1])
#define hiword(X) (((ushort *)&X)[0])


#define NGROUPS 20
#define NOGROUP ((gid_t) -1)
# 291 "/usr/include/sys/param.h" 3
#define ISSIG_SLEEP(t,ret) (((t->kt_suspendcnt) || (!ksigisempty((t)->kt_procp->p_sig)) || ((!ksigisempty((t)->kt_sig)) && ((t)->kt_procp->p_flag&STRC || (ksigxsectinv((t)->kt_sig, (t)->kt_sigmask))))) && (thread_unlock(t), ret = issig(KT_NOT_CLEAN_PT), thread_lock(t),ret) )
# 302 "/usr/include/sys/param.h" 3
#define ISSIG(t) ((t->kt_suspendcnt || (!ksigisempty((t)->kt_procp->p_sig)) || (!(ksigisempty((t)->kt_sig)) && ((t)->kt_procp->p_flag&STRC || (ksigxsectinv((t)->kt_sig,(t)->kt_sigmask))))) && issig(KT_NOT_CLEAN_PT) )
# 316 "/usr/include/sys/param.h" 3
#define NBBY 8
# 342 "/usr/include/sys/param.h" 3
#define MAXBSIZE 65536

#define DEV_BSIZE 1024
#define DEV_BSHIFT 10
#define DEV_BMASK (DEV_BSIZE-1)


#define BLKDEV_IOSIZE 2048
#define BLKDEV_IOSHIFT 11
#define BLKDEV_IOMASK (BLKDEV_IOSIZE-1)


#define btodb(bytes) (sizeof(bytes) == sizeof(int64_t)? (unsigned)((uint64_t)(bytes) >> DEV_BSHIFT): ((unsigned)(bytes) >> DEV_BSHIFT))
# 363 "/usr/include/sys/param.h" 3
#define dbtob(db) ((unsigned)(db) << DEV_BSHIFT)







#define dbtoo(db) ((uint32_t)(db) << DEV_BSHIFT)




#define btodbup(bytes) (((unsigned)(bytes) + (DEV_BSIZE-1)) >> DEV_BSHIFT)
# 385 "/usr/include/sys/param.h" 3
#define bdbtofsb(bn) ((bn) / (BLKDEV_IOSIZE/DEV_BSIZE))
# 398 "/usr/include/sys/param.h" 3
#define MAXPATHLEN 1024
#define MAXSYMLINKS 20




#define setbit(a,i) ((a)[(i)/NBBY] |= 1<<((i)%NBBY))
#define clrbit(a,i) ((a)[(i)/NBBY] &= ~(1<<((i)%NBBY)))
#define isset(a,i) ((a)[(i)/NBBY] & (1<<((i)%NBBY)))
#define isclr(a,i) (((a)[(i)/NBBY] & (1<<((i)%NBBY))) == 0)




#define wsetbit(a,i) ((a)[(i)/NBTSPW] |= 1<<((i)%NBTSPW))
#define wclrbit(a,i) ((a)[(i)/NBTSPW] &= ~(1<<((i)%NBTSPW)))
#define wisset(a,i) ((a)[(i)/NBTSPW] & (1<<((i)%NBTSPW)))
#define wisclr(a,i) (((a)[(i)/NBTSPW] & (1<<((i)%NBTSPW))) == 0)




#define MIN(a,b) (((a)<(b))?(a):(b))
#define MAX(a,b) (((a)>(b))?(a):(b))







#define roundup(x,y) ((((x)+((y)-1))/(y))*(y))
# 398 "/usr/include/limits.h" 2 3

#define UCHAR_MIN 0


#define DBL_MIN 2.2250738585072014e-308



#define FLT_MIN ((float)1.17549435e-38)




#define LONG_LONG_MIN (-9223372036854775807LL -1)

#define LONG_LONG_MAX 9223372036854775807LL


#define ULONG_LONG_MAX 18446744073709551615ULL
# 434 "/usr/include/limits.h" 3
#define NL_SAFEFD 3
#define STD_BLK 512

#define NL_MAXDATE 200
#define MAX_INFO_MSGS 80
#define MAX_ERA_FMTS 16
#define LEN_INFO_MSGS 80
#define LEN_ERA_FMTS 40
#define MAXLNAMELEN 14
#define _LC_ALL_SIZE 256
#define _LC_COLLATE_SIZE 1024
#define _LC_CTYPE_SIZE 2456
#define _LC_MONETARY_SIZE 128
#define _LC_NUMERIC_SIZE 128
#define _LC_TIME_SIZE 912
#define _LC_MESSAGES_SIZE 256

#define NLSDIR "/usr/lib/nls/"
#define MAX_DIGIT_ALT 35
#define MAX_PUNCT_ALT 67


#define NL_WHICHLANGS "/usr/lib/nls/config"
#define NL_SPECMAX 96




#define PID_MAX MAXPID
#define PIPE_MAX INT_MAX

#define UID_MAX MAXUID
# 133 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/limits.h" 2 3
# 8 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/syslimits.h" 2 3
#undef _GCC_NEXT_LIMITS_H
# 12 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/limits.h" 2 3


#define _LIMITS_H___ 


#undef CHAR_BIT
#define CHAR_BIT 8







#undef SCHAR_MIN
#define SCHAR_MIN (-128)
#undef SCHAR_MAX
#define SCHAR_MAX 127


#undef UCHAR_MAX
#define UCHAR_MAX 255
# 42 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/limits.h" 3
#undef CHAR_MIN
#define CHAR_MIN (-128)
#undef CHAR_MAX
#define CHAR_MAX 127



#define __SHRT_MAX__ 32767



#undef SHRT_MIN
#define SHRT_MIN (-SHRT_MAX-1)
#undef SHRT_MAX
#define SHRT_MAX __SHRT_MAX__



#define __INT_MAX__ 2147483647

#undef INT_MIN
#define INT_MIN (-INT_MAX-1)
#undef INT_MAX
#define INT_MAX __INT_MAX__


#undef USHRT_MAX



#define USHRT_MAX (SHRT_MAX * 2 + 1)



#undef UINT_MAX
#define UINT_MAX (INT_MAX * 2U + 1)







#define __LONG_MAX__ 2147483647L


#undef LONG_MIN
#define LONG_MIN (-LONG_MAX-1)
#undef LONG_MAX
#define LONG_MAX __LONG_MAX__


#undef ULONG_MAX
#define ULONG_MAX (LONG_MAX * 2UL + 1)


#define __LONG_LONG_MAX__ 9223372036854775807LL
# 115 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/limits.h" 3
#undef LONG_LONG_MIN
#define LONG_LONG_MIN (-LONG_LONG_MAX-1)
#undef LONG_LONG_MAX
#define LONG_LONG_MAX __LONG_LONG_MAX__


#undef ULONG_LONG_MAX
#define ULONG_LONG_MAX (LONG_LONG_MAX * 2ULL + 1)
# 99 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/locale.h" 2 3


   extern char *_errlocale();

#define C_LANGID 99

#define NC_LANGID 0

#define N_CATEGORY 7

#define SL_NAME_SIZE 59

#define MOD_NAME_SIZE 14


#define LC_NAME_SIZE (SL_NAME_SIZE-MOD_NAME_SIZE)


#define _LastCategory LC_MESSAGES
#define LC_BUFSIZ (_LastCategory)*(_POSIX_PATH_MAX+1)


#define _ValidCategory(c) ((int)(c) >= LC_ALL && ((int)c <= _LastCategory))


   extern char __locale_names[6 +1][255 +1];






#define LOCALE_STATUS 1

  struct locale_data {
    char LC_ALL_D[59];
    char LC_COLLATE_D[59];
    char LC_CTYPE_D[59];
    char LC_MONETARY_D[59];
    char LC_NUMERIC_D[59];
    char LC_TIME_D[59];
    char LC_MESSAGES_D[59];
    };


     extern struct locale_data *getlocale(int);
# 169 "/auto/gabellin/tools/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2.2/include/locale.h" 3
extern char *__err_string;
#define SETLOCALE(cat,loc) (setlocale(cat, loc) || (fprintf(stderr, __err_string), (char *)0))

#define _errlocale(__x) __err_string
# 37 "../intl/libintl.h" 2
# 72 "../intl/libintl.h"
struct _msg_ent
{
  const char *_msg;
  int _msg_number;
};
# 89 "../intl/libintl.h"
#define gettext_noop(Str) (Str)




extern char *gettext (const char *__msgid);
extern char *gettext__ (const char *__msgid);



extern char *dgettext (const char *__domainname, const char *__msgid);
extern char *dgettext__ (const char *__domainname, const char *__msgid);




extern char *dcgettext (const char *__domainname, const char *__msgid, int __category);

extern char *dcgettext__ (const char *__domainname, const char *__msgid, int __category);






extern char *textdomain (const char *__domainname);
extern char *textdomain__ (const char *__domainname);



extern char *bindtextdomain (const char *__domainname, const char *__dirname);

extern char *bindtextdomain__ (const char *__domainname, const char *__dirname);
# 131 "../intl/libintl.h"
#define gettext(Msgid) dgettext (NULL, Msgid)


#define dgettext(Domainname,Msgid) dcgettext (Domainname, Msgid, LC_MESSAGES)
# 136 "/auto/gabellin/prova/src/binutils-2.12/bfd/sysdep.h" 2
# 148 "/auto/gabellin/prova/src/binutils-2.12/bfd/sysdep.h"
#define _(String) dgettext (PACKAGE, String)

#define N_(String) gettext_noop (String)
# 132 "/auto/gabellin/prova/src/binutils-2.12/bfd/archive.c" 2
# 1 "/auto/gabellin/prova/src/binutils-2.12/bfd/libbfd.h" 1
# 33 "/auto/gabellin/prova/src/binutils-2.12/bfd/libbfd.h"
#define BFD_ALIGN(this,boundary) ((((bfd_vma) (this) + (boundary) - 1) >= (bfd_vma) (this)) ? (((bfd_vma) (this) + ((boundary) - 1)) & ~ (bfd_vma) ((boundary)-1)) : ~ (bfd_vma) 0)






#define DEFAULT_BUFFERSIZE 8192



#define set_tdata(bfd,v) ((bfd)->tdata.any = (PTR) (v))




struct bfd_in_memory
{

  bfd_size_type size;

  bfd_byte *buffer;
};




struct artdata {
  file_ptr first_file_filepos;

  struct ar_cache *cache;
  bfd *archive_head;
  carsym *symdefs;
  symindex symdef_count;
  char *extended_names;

  long armap_timestamp;





  file_ptr armap_datepos;

  void * tdata;
};

#define bfd_ardata(bfd) ((bfd)->tdata.aout_ar_data)


struct areltdata {
  char * arch_header;
  unsigned int parsed_size;
  char *filename;
};

#define arelt_size(bfd) (((struct areltdata *)((bfd)->arelt_data))->parsed_size)

extern void * bfd_malloc (bfd_size_type);
extern void * bfd_realloc (void *, bfd_size_type);
extern void * bfd_zmalloc (bfd_size_type);

extern bfd_error_handler_type _bfd_error_handler;



extern void * bfd_alloc (bfd *, bfd_size_type);
extern void * bfd_zalloc (bfd *, bfd_size_type);
extern void bfd_release (bfd *, void *);

bfd * _bfd_create_empty_archive_element_shell (bfd *obfd);
bfd * _bfd_look_for_bfd_in_cache (bfd *, file_ptr);
boolean _bfd_add_bfd_to_archive_cache (bfd *, file_ptr, bfd *);
boolean _bfd_generic_mkarchive (bfd *abfd);
const bfd_target *bfd_generic_archive_p (bfd *abfd);
boolean bfd_slurp_armap (bfd *abfd);
boolean bfd_slurp_bsd_armap_f2 (bfd *abfd);
#define bfd_slurp_bsd_armap bfd_slurp_armap
#define bfd_slurp_coff_armap bfd_slurp_armap
boolean _bfd_slurp_extended_name_table (bfd *abfd);
extern boolean _bfd_construct_extended_name_table
  (bfd *, boolean, char **, bfd_size_type *);
boolean _bfd_write_archive_contents (bfd *abfd);
boolean _bfd_compute_and_write_armap (bfd *, unsigned int elength);
bfd *_bfd_get_elt_at_filepos (bfd *archive, file_ptr filepos);
extern bfd *_bfd_generic_get_elt_at_index (bfd *, symindex);
bfd * _bfd_new_bfd (void);
void _bfd_delete_bfd (bfd *);

boolean bfd_false (bfd *ignore);
boolean bfd_true (bfd *ignore);
void * bfd_nullvoidptr (bfd *ignore);
int bfd_0 (bfd *ignore);
unsigned int bfd_0u (bfd *ignore);
long bfd_0l (bfd *ignore);
long _bfd_n1 (bfd *ignore);
void bfd_void (bfd *ignore);

bfd *_bfd_new_bfd_contained_in (bfd *);
const bfd_target *_bfd_dummy_target (bfd *abfd);

void bfd_dont_truncate_arname (bfd *abfd, const char *filename, char *hdr);

void bfd_bsd_truncate_arname (bfd *abfd, const char *filename, char *hdr);

void bfd_gnu_truncate_arname (bfd *abfd, const char *filename, char *hdr);


boolean bsd_write_armap (bfd *arch, unsigned int elength, struct orl *map, unsigned int orl_count, int stridx);


boolean coff_write_armap (bfd *arch, unsigned int elength, struct orl *map, unsigned int orl_count, int stridx);


extern void * _bfd_generic_read_ar_hdr (bfd *);

extern void * _bfd_generic_read_ar_hdr_mag (bfd *, const char *);

bfd * bfd_generic_openr_next_archived_file (bfd *archive, bfd *last_file);


int bfd_generic_stat_arch_elt (bfd *, struct stat *);

#define _bfd_read_ar_hdr(abfd) BFD_SEND (abfd, _bfd_read_ar_hdr_fn, (abfd))





#define _bfd_generic_close_and_cleanup bfd_true
#define _bfd_generic_bfd_free_cached_info bfd_true
#define _bfd_generic_new_section_hook ((boolean (*) PARAMS ((bfd *, asection *))) bfd_true)

extern boolean _bfd_generic_get_section_contents
  (bfd *, asection *, void *, file_ptr, bfd_size_type);
extern boolean _bfd_generic_get_section_contents_in_window
  (bfd *, asection *, bfd_window *, file_ptr, bfd_size_type);




#define _bfd_generic_bfd_copy_private_bfd_data ((boolean (*) PARAMS ((bfd *, bfd *))) bfd_true)

#define _bfd_generic_bfd_merge_private_bfd_data ((boolean (*) PARAMS ((bfd *, bfd *))) bfd_true)

#define _bfd_generic_bfd_set_private_flags ((boolean (*) PARAMS ((bfd *, flagword))) bfd_true)

#define _bfd_generic_bfd_copy_private_section_data ((boolean (*) PARAMS ((bfd *, asection *, bfd *, asection *))) bfd_true)

#define _bfd_generic_bfd_copy_private_symbol_data ((boolean (*) PARAMS ((bfd *, asymbol *, bfd *, asymbol *))) bfd_true)

#define _bfd_generic_bfd_print_private_bfd_data ((boolean (*) PARAMS ((bfd *, PTR))) bfd_true)





extern char *_bfd_nocore_core_file_failing_command (bfd *);
extern int _bfd_nocore_core_file_failing_signal (bfd *);
extern boolean _bfd_nocore_core_file_matches_executable_p
  (bfd *, bfd *);




#define _bfd_noarchive_slurp_armap bfd_false
#define _bfd_noarchive_slurp_extended_name_table bfd_false
#define _bfd_noarchive_construct_extended_name_table ((boolean (*) PARAMS ((bfd *, char **, bfd_size_type *, const char **))) bfd_false)


#define _bfd_noarchive_truncate_arname ((void (*) PARAMS ((bfd *, const char *, char *))) bfd_void)

#define _bfd_noarchive_write_armap ((boolean (*) PARAMS ((bfd *, unsigned int, struct orl *, unsigned int, int))) bfd_false)



#define _bfd_noarchive_read_ar_hdr bfd_nullvoidptr
#define _bfd_noarchive_openr_next_archived_file ((bfd *(*) PARAMS ((bfd *, bfd *))) bfd_nullvoidptr)

#define _bfd_noarchive_get_elt_at_index ((bfd *(*) PARAMS ((bfd *, symindex))) bfd_nullvoidptr)

#define _bfd_noarchive_generic_stat_arch_elt bfd_generic_stat_arch_elt
#define _bfd_noarchive_update_armap_timestamp bfd_false




#define _bfd_archive_bsd_slurp_armap bfd_slurp_bsd_armap
#define _bfd_archive_bsd_slurp_extended_name_table _bfd_slurp_extended_name_table

extern boolean _bfd_archive_bsd_construct_extended_name_table
  (bfd *, char **, bfd_size_type *, const char **);
#define _bfd_archive_bsd_truncate_arname bfd_bsd_truncate_arname
#define _bfd_archive_bsd_write_armap bsd_write_armap
#define _bfd_archive_bsd_read_ar_hdr _bfd_generic_read_ar_hdr
#define _bfd_archive_bsd_openr_next_archived_file bfd_generic_openr_next_archived_file

#define _bfd_archive_bsd_get_elt_at_index _bfd_generic_get_elt_at_index
#define _bfd_archive_bsd_generic_stat_arch_elt bfd_generic_stat_arch_elt

extern boolean _bfd_archive_bsd_update_armap_timestamp (bfd *);




#define _bfd_archive_coff_slurp_armap bfd_slurp_coff_armap
#define _bfd_archive_coff_slurp_extended_name_table _bfd_slurp_extended_name_table

extern boolean _bfd_archive_coff_construct_extended_name_table
  (bfd *, char **, bfd_size_type *, const char **);
#define _bfd_archive_coff_truncate_arname bfd_dont_truncate_arname
#define _bfd_archive_coff_write_armap coff_write_armap
#define _bfd_archive_coff_read_ar_hdr _bfd_generic_read_ar_hdr
#define _bfd_archive_coff_openr_next_archived_file bfd_generic_openr_next_archived_file

#define _bfd_archive_coff_get_elt_at_index _bfd_generic_get_elt_at_index
#define _bfd_archive_coff_generic_stat_arch_elt bfd_generic_stat_arch_elt

#define _bfd_archive_coff_update_armap_timestamp bfd_true




#define _bfd_nosymbols_get_symtab_upper_bound _bfd_n1
#define _bfd_nosymbols_get_symtab ((long (*) PARAMS ((bfd *, asymbol **))) _bfd_n1)

#define _bfd_nosymbols_make_empty_symbol _bfd_generic_make_empty_symbol
#define _bfd_nosymbols_print_symbol ((void (*) PARAMS ((bfd *, PTR, asymbol *, bfd_print_symbol_type))) bfd_void)

#define _bfd_nosymbols_get_symbol_info ((void (*) PARAMS ((bfd *, asymbol *, symbol_info *))) bfd_void)

#define _bfd_nosymbols_bfd_is_local_label_name ((boolean (*) PARAMS ((bfd *, const char *))) bfd_false)

#define _bfd_nosymbols_get_lineno ((alent *(*) PARAMS ((bfd *, asymbol *))) bfd_nullvoidptr)

#define _bfd_nosymbols_find_nearest_line ((boolean (*) PARAMS ((bfd *, asection *, asymbol **, bfd_vma, const char **, const char **, unsigned int *))) bfd_false)




#define _bfd_nosymbols_bfd_make_debug_symbol ((asymbol *(*) PARAMS ((bfd *, PTR, unsigned long))) bfd_nullvoidptr)

#define _bfd_nosymbols_read_minisymbols ((long (*) PARAMS ((bfd *, boolean, PTR *, unsigned int *))) _bfd_n1)

#define _bfd_nosymbols_minisymbol_to_symbol ((asymbol *(*) PARAMS ((bfd *, boolean, const PTR, asymbol *))) bfd_nullvoidptr)






#define _bfd_norelocs_get_reloc_upper_bound ((long (*) PARAMS ((bfd *, asection *))) _bfd_n1)

#define _bfd_norelocs_canonicalize_reloc ((long (*) PARAMS ((bfd *, asection *, arelent **, asymbol **))) _bfd_n1)

#define _bfd_norelocs_bfd_reloc_type_lookup ((reloc_howto_type *(*) PARAMS ((bfd *, bfd_reloc_code_real_type))) bfd_nullvoidptr)






#define _bfd_nowrite_set_arch_mach ((boolean (*) PARAMS ((bfd *, enum bfd_architecture, unsigned long))) bfd_false)


#define _bfd_nowrite_set_section_contents ((boolean (*) PARAMS ((bfd *, asection *, PTR, file_ptr, bfd_size_type))) bfd_false)






#define _bfd_generic_set_arch_mach bfd_default_set_arch_mach
extern boolean _bfd_generic_set_section_contents
  (bfd *, asection *, void *, file_ptr, bfd_size_type);




#define _bfd_nolink_sizeof_headers ((int (*) PARAMS ((bfd *, boolean))) bfd_0)
#define _bfd_nolink_bfd_get_relocated_section_contents ((bfd_byte *(*) PARAMS ((bfd *, struct bfd_link_info *, struct bfd_link_order *, bfd_byte *, boolean, asymbol **))) bfd_nullvoidptr)




#define _bfd_nolink_bfd_relax_section ((boolean (*) PARAMS ((bfd *, asection *, struct bfd_link_info *, boolean *))) bfd_false)



#define _bfd_nolink_bfd_gc_sections ((boolean (*) PARAMS ((bfd *, struct bfd_link_info *))) bfd_false)



#define _bfd_nolink_bfd_merge_sections ((boolean (*) PARAMS ((bfd *, struct bfd_link_info *))) bfd_false)



#define _bfd_nolink_bfd_link_hash_table_create ((struct bfd_link_hash_table *(*) PARAMS ((bfd *))) bfd_nullvoidptr)

#define _bfd_nolink_bfd_link_add_symbols ((boolean (*) PARAMS ((bfd *, struct bfd_link_info *))) bfd_false)

#define _bfd_nolink_bfd_final_link ((boolean (*) PARAMS ((bfd *, struct bfd_link_info *))) bfd_false)

#define _bfd_nolink_bfd_link_split_section ((boolean (*) PARAMS ((bfd *, struct sec *))) bfd_false)






#define _bfd_nodynamic_get_dynamic_symtab_upper_bound _bfd_n1
#define _bfd_nodynamic_canonicalize_dynamic_symtab ((long (*) PARAMS ((bfd *, asymbol **))) _bfd_n1)

#define _bfd_nodynamic_get_dynamic_reloc_upper_bound _bfd_n1
#define _bfd_nodynamic_canonicalize_dynamic_reloc ((long (*) PARAMS ((bfd *, arelent **, asymbol **))) _bfd_n1)




extern boolean bfd_generic_is_local_label_name (bfd *, const char *);


extern long _bfd_generic_read_minisymbols
  (bfd *, boolean, void * *, unsigned int *);
extern asymbol *_bfd_generic_minisymbol_to_symbol
  (bfd *, boolean, const void *, asymbol *);


extern boolean _bfd_stab_section_find_nearest_line
  (bfd *, asymbol **, asection *, bfd_vma, boolean *, const char **, const char **, unsigned int *, void * *);



extern boolean _bfd_dwarf1_find_nearest_line
  (bfd *, asection *, asymbol **, bfd_vma, const char **, const char **, unsigned int *);



extern boolean _bfd_dwarf2_find_nearest_line
  (bfd *, asection *, asymbol **, bfd_vma, const char **, const char **, unsigned int *, unsigned int, void * *);




extern struct bfd_hash_entry *bfd_section_hash_newfunc
  (struct bfd_hash_entry *, struct bfd_hash_table *, const char *);


extern struct bfd_hash_entry *_bfd_link_hash_newfunc
  (struct bfd_hash_entry *entry, struct bfd_hash_table *table, const char *string);




extern boolean _bfd_link_hash_table_init
  (struct bfd_link_hash_table *, bfd *, struct bfd_hash_entry *(*) (struct bfd_hash_entry *, struct bfd_hash_table *, const char *));





extern struct bfd_link_hash_table *_bfd_generic_link_hash_table_create
  (bfd *);


extern boolean _bfd_generic_link_add_symbols
  (bfd *, struct bfd_link_info *);




extern boolean _bfd_generic_link_add_symbols_collect
  (bfd *, struct bfd_link_info *);


extern boolean _bfd_generic_link_add_archive_symbols
  (bfd *, struct bfd_link_info *, boolean (*checkfn) (bfd *, struct bfd_link_info *, boolean *));





typedef struct bfd_link_hash_entry _bfd_link_hash_entry;


extern boolean _bfd_generic_link_add_one_symbol
  (struct bfd_link_info *, bfd *, const char *name, flagword, asection *, bfd_vma, const char *, boolean copy, boolean constructor, struct bfd_link_hash_entry **);




extern boolean _bfd_generic_final_link
  (bfd *, struct bfd_link_info *);

extern boolean _bfd_generic_link_split_section
  (bfd *, struct sec *);


extern boolean _bfd_generic_reloc_link_order
  (bfd *, struct bfd_link_info *, asection *, struct bfd_link_order *);



extern boolean _bfd_default_link_order
  (bfd *, struct bfd_link_info *, asection *, struct bfd_link_order *);



extern unsigned int _bfd_count_link_order_relocs
  (struct bfd_link_order *);


extern bfd_reloc_status_type _bfd_final_link_relocate
  (reloc_howto_type *, bfd *, asection *, bfd_byte *, bfd_vma, bfd_vma, bfd_vma);



extern bfd_reloc_status_type _bfd_relocate_contents
  (reloc_howto_type *, bfd *, bfd_vma, bfd_byte *);



extern boolean _bfd_link_section_stabs
  (bfd *, void * *, asection *, asection *, void * *);


extern boolean _bfd_discard_section_stabs
  (bfd *, asection *, void *, boolean (*) (bfd_vma, void *), void *);




extern boolean _bfd_write_section_stabs
  (bfd *, void * *, asection *, void * *, bfd_byte *);



extern boolean _bfd_write_stab_strings (bfd *, void * *);




extern bfd_vma _bfd_stab_section_offset
  (bfd *, void * *, asection *, void * *, bfd_vma);



extern boolean _bfd_merge_section
  (bfd *, void * *, asection *, void * *);



extern boolean _bfd_merge_sections
  (bfd *, void *, void (*)(bfd *, asection *));



extern boolean _bfd_write_merged_section
  (bfd *, asection *, void *);



extern bfd_vma _bfd_merged_section_offset
  (bfd *, asection **, void *, bfd_vma, bfd_vma);


extern struct bfd_strtab_hash *_bfd_stringtab_init (void);


extern struct bfd_strtab_hash *_bfd_xcoff_stringtab_init (void);


extern void _bfd_stringtab_free (struct bfd_strtab_hash *);


extern bfd_size_type _bfd_stringtab_size (struct bfd_strtab_hash *);


extern bfd_size_type _bfd_stringtab_add
  (struct bfd_strtab_hash *, const char *, boolean hash, boolean copy);



extern boolean _bfd_stringtab_emit (bfd *, struct bfd_strtab_hash *);


extern boolean _bfd_generic_verify_endian_match (bfd *, bfd *);
# 530 "/auto/gabellin/prova/src/binutils-2.12/bfd/libbfd.h"
#define bfd_read_p(abfd) ((abfd)->direction == read_direction || (abfd)->direction == both_direction)
#define bfd_write_p(abfd) ((abfd)->direction == write_direction || (abfd)->direction == both_direction)

void bfd_assert (const char*,int);

#define BFD_ASSERT(x) { if (!(x)) bfd_assert(__FILE__,__LINE__); }


#define BFD_FAIL() { bfd_assert(__FILE__,__LINE__); }


extern void _bfd_abort (const char *, int, const char *)
     __attribute__ ((__noreturn__));







#define abort() _bfd_abort (__FILE__, __LINE__, __PRETTY_FUNCTION__)

FILE * bfd_cache_lookup_worker (bfd *);

extern bfd *bfd_last_cache;



extern const bfd_target * const *bfd_target_vector;
extern const bfd_target *bfd_default_vector[];





struct ecoff_find_line;


extern boolean _bfd_ecoff_locate_line
  (bfd *, asection *, bfd_vma, struct ecoff_debug_info * const, const struct ecoff_debug_swap * const, struct ecoff_find_line *, const char **, const char **, unsigned int *);


extern boolean _bfd_ecoff_get_accumulated_pdr (void *, bfd_byte *);
extern boolean _bfd_ecoff_get_accumulated_sym (void *, bfd_byte *);
extern boolean _bfd_ecoff_get_accumulated_ss (void *, bfd_byte *);

extern bfd_vma _bfd_get_gp_value (bfd *);
extern void _bfd_set_gp_value (bfd *, bfd_vma);




extern boolean _bfd_sh_align_load_span
  (bfd *, asection *, bfd_byte *, boolean (*) (bfd *, asection *, void *, bfd_byte *, bfd_vma), void *, bfd_vma **, bfd_vma *, bfd_vma, bfd_vma, boolean *);





void
bfd_write_bigendian_4byte_int (bfd *, unsigned int);

unsigned int
bfd_log2 (bfd_vma x);

#define BFD_CACHE_MAX_OPEN 10
extern bfd *bfd_last_cache;

#define bfd_cache_lookup(x) ((x)==bfd_last_cache? (FILE*) (bfd_last_cache->iostream): bfd_cache_lookup_worker(x))



boolean
bfd_cache_init (bfd *abfd);

boolean
bfd_cache_close (bfd *abfd);

FILE*
bfd_open_file (bfd *abfd);

FILE *
bfd_cache_lookup_worker (bfd *abfd);
# 1206 "/auto/gabellin/prova/src/binutils-2.12/bfd/libbfd.h"
reloc_howto_type *
bfd_default_reloc_type_lookup (bfd *abfd, bfd_reloc_code_real_type code);

boolean
bfd_generic_relax_section (bfd *abfd, asection *section, struct bfd_link_info *, boolean *);




boolean
bfd_generic_gc_sections (bfd *, struct bfd_link_info *);

boolean
bfd_generic_merge_sections (bfd *, struct bfd_link_info *);

bfd_byte *
bfd_generic_get_relocated_section_contents (bfd *abfd, struct bfd_link_info *link_info, struct bfd_link_order *link_order, bfd_byte *data, boolean relocateable, asymbol **symbols);






extern const bfd_arch_info_type bfd_default_arch_struct;
boolean
bfd_default_set_arch_mach (bfd *abfd, enum bfd_architecture arch, unsigned long mach);



const bfd_arch_info_type *
bfd_default_compatible (const bfd_arch_info_type *a, const bfd_arch_info_type *b);


boolean
bfd_default_scan (const struct bfd_arch_info *info, const char *string);

struct elf_internal_shdr *
bfd_elf_find_section (bfd *abfd, char *name);
# 133 "/auto/gabellin/prova/src/binutils-2.12/bfd/archive.c" 2
# 1 "/auto/gabellin/prova/src/binutils-2.12/include/aout/ar.h" 1
# 23 "/auto/gabellin/prova/src/binutils-2.12/include/aout/ar.h"
#define __GNU_AR_H__ 





#define ARMAG "!<arch>\012"
#define ARMAGB "!<bout>\012"
#define SARMAG 8
#define ARFMAG "`\012"







#define ARMAP_TIME_OFFSET 60

struct ar_hdr {
  char ar_name[16];
  char ar_date[12];
  char ar_uid[6];
  char ar_gid[6];
  char ar_mode[8];
  char ar_size[10];
  char ar_fmag[2];
};
# 134 "/auto/gabellin/prova/src/binutils-2.12/bfd/archive.c" 2
# 1 "/auto/gabellin/prova/src/binutils-2.12/include/aout/ranlib.h" 1
# 34 "/auto/gabellin/prova/src/binutils-2.12/include/aout/ranlib.h"
#define RANLIBMAG "__.SYMDEF"
#define RANLIBSKEW 3







struct symdef
  {
    union
      {
        unsigned long string_offset;
        char *name;
      } s;



    unsigned long file_offset;
  };



#define ranlib symdef
#define ran_un s
#define ran_strx string_offset
#define ran_name name
#define ran_off file_offset
# 135 "/auto/gabellin/prova/src/binutils-2.12/bfd/archive.c" 2
# 1 "/auto/gabellin/prova/src/binutils-2.12/include/safe-ctype.h" 1
# 36 "/auto/gabellin/prova/src/binutils-2.12/include/safe-ctype.h"
#define SAFE_CTYPE_H 







enum {

  _sch_isblank = 0x0001,
  _sch_iscntrl = 0x0002,
  _sch_isdigit = 0x0004,
  _sch_islower = 0x0008,
  _sch_isprint = 0x0010,
  _sch_ispunct = 0x0020,
  _sch_isspace = 0x0040,
  _sch_isupper = 0x0080,
  _sch_isxdigit = 0x0100,


  _sch_isidst = 0x0200,
  _sch_isvsp = 0x0400,
  _sch_isnvsp = 0x0800,


  _sch_isalpha = _sch_isupper|_sch_islower,
  _sch_isalnum = _sch_isalpha|_sch_isdigit,
  _sch_isidnum = _sch_isidst|_sch_isdigit,
  _sch_isgraph = _sch_isalnum|_sch_ispunct,
  _sch_iscppsp = _sch_isvsp|_sch_isnvsp,
  _sch_isbasic = _sch_isprint|_sch_iscppsp

};


extern const unsigned short _sch_istable[256];

#define _sch_test(c,bit) (_sch_istable[(c) & 0xff] & (unsigned short)(bit))

#define ISALPHA(c) _sch_test(c, _sch_isalpha)
#define ISALNUM(c) _sch_test(c, _sch_isalnum)
#define ISBLANK(c) _sch_test(c, _sch_isblank)
#define ISCNTRL(c) _sch_test(c, _sch_iscntrl)
#define ISDIGIT(c) _sch_test(c, _sch_isdigit)
#define ISGRAPH(c) _sch_test(c, _sch_isgraph)
#define ISLOWER(c) _sch_test(c, _sch_islower)
#define ISPRINT(c) _sch_test(c, _sch_isprint)
#define ISPUNCT(c) _sch_test(c, _sch_ispunct)
#define ISSPACE(c) _sch_test(c, _sch_isspace)
#define ISUPPER(c) _sch_test(c, _sch_isupper)
#define ISXDIGIT(c) _sch_test(c, _sch_isxdigit)

#define ISIDNUM(c) _sch_test(c, _sch_isidnum)
#define ISIDST(c) _sch_test(c, _sch_isidst)
#define IS_ISOBASIC(c) _sch_test(c, _sch_isbasic)
#define IS_VSPACE(c) _sch_test(c, _sch_isvsp)
#define IS_NVSPACE(c) _sch_test(c, _sch_isnvsp)
#define IS_SPACE_OR_NUL(c) _sch_test(c, _sch_iscppsp)


extern const unsigned char _sch_toupper[256];
extern const unsigned char _sch_tolower[256];
#define TOUPPER(c) _sch_toupper[(c) & 0xff]
#define TOLOWER(c) _sch_tolower[(c) & 0xff]
# 136 "/auto/gabellin/prova/src/binutils-2.12/bfd/archive.c" 2


extern int errno;
# 151 "/auto/gabellin/prova/src/binutils-2.12/bfd/archive.c"
struct ar_cache {
  file_ptr ptr;
  bfd *arelt;
  struct ar_cache *next;
};

#define ar_padchar(abfd) ((abfd)->xvec->ar_pad_char)
#define ar_maxnamelen(abfd) ((abfd)->xvec->ar_max_namelen)

#define arch_eltdata(bfd) ((struct areltdata *) ((bfd)->arelt_data))
#define arch_hdr(bfd) ((struct ar_hdr *)arch_eltdata(bfd)->arch_header)

static char *get_extended_arelt_filename (bfd *arch, const char *name);

static boolean do_slurp_bsd_armap (bfd *abfd);
static boolean do_slurp_coff_armap (bfd *abfd);
boolean bfd_elf64_archive_slurp_armap (bfd *abfd);
static const char *normalize (bfd *, const char *file);
static struct areltdata *bfd_ar_hdr_from_filesystem (bfd *abfd, const char *, bfd *member);



boolean
_bfd_generic_mkarchive (abfd)
     bfd *abfd;
{
  bfd_size_type amt = sizeof (struct artdata);

  abfd->tdata.aout_ar_data = (struct artdata *) bfd_zalloc (abfd, amt);
  if (((abfd)->tdata.aout_ar_data) == ((void *)0))
    return false;

  ((abfd)->tdata.aout_ar_data)->cache = ((void *)0);
  ((abfd)->tdata.aout_ar_data)->archive_head = ((void *)0);
  ((abfd)->tdata.aout_ar_data)->symdefs = ((void *)0);
  ((abfd)->tdata.aout_ar_data)->extended_names = ((void *)0);
  ((abfd)->tdata.aout_ar_data)->tdata = ((void *)0);

  return true;
}
# 213 "/auto/gabellin/prova/src/binutils-2.12/bfd/archive.c"
symindex
bfd_get_next_mapent (abfd, prev, entry)
     bfd *abfd;
     symindex prev;
     carsym **entry;
{
  if (!((abfd)->has_armap))
    {
      bfd_set_error (bfd_error_invalid_operation);
      return ((symindex) ~0);
    }

  if (prev == ((symindex) ~0))
    prev = 0;
  else
    ++prev;
  if (prev >= ((abfd)->tdata.aout_ar_data)->symdef_count)
    return ((symindex) ~0);

  *entry = (((abfd)->tdata.aout_ar_data)->symdefs + prev);
  return prev;
}



bfd *
_bfd_create_empty_archive_element_shell (obfd)
     bfd *obfd;
{
  return _bfd_new_bfd_contained_in (obfd);
}
# 257 "/auto/gabellin/prova/src/binutils-2.12/bfd/archive.c"
boolean
bfd_set_archive_head (output_archive, new_head)
     bfd *output_archive;
     bfd *new_head;
{

  output_archive->archive_head = new_head;
  return true;
}

bfd *
_bfd_look_for_bfd_in_cache (arch_bfd, filepos)
     bfd *arch_bfd;
     file_ptr filepos;
{
  struct ar_cache *current;

  for (current = ((arch_bfd)->tdata.aout_ar_data)->cache; current != ((void *)0);
       current = current->next)
    if (current->ptr == filepos)
      return current->arelt;

  return ((void *)0);
}


boolean
_bfd_add_bfd_to_archive_cache (arch_bfd, filepos, new_elt)
     bfd *arch_bfd, *new_elt;
     file_ptr filepos;
{
  bfd_size_type amt = sizeof (struct ar_cache);

  struct ar_cache *new_cache = (struct ar_cache *) bfd_zalloc (arch_bfd, amt);
  if (new_cache == ((void *)0))
    return false;

  new_cache->ptr = filepos;
  new_cache->arelt = new_elt;
  new_cache->next = (struct ar_cache *) ((void *)0);
  if (((arch_bfd)->tdata.aout_ar_data)->cache == ((void *)0))
    ((arch_bfd)->tdata.aout_ar_data)->cache = new_cache;
  else
    {
      struct ar_cache *current = ((arch_bfd)->tdata.aout_ar_data)->cache;

      while (current->next != ((void *)0))
        current = current->next;
      current->next = new_cache;
    }

  return true;
}




static char *
get_extended_arelt_filename (arch, name)
     bfd *arch;
     const char *name;
{
  unsigned long index = 0;



  errno = 0;

  index = strtol (name + 1, ((void *)0), 10);
  if (errno != 0)
    {
      bfd_set_error (bfd_error_malformed_archive);
      return ((void *)0);
    }

  return ((arch)->tdata.aout_ar_data)->extended_names + index;
}
# 344 "/auto/gabellin/prova/src/binutils-2.12/bfd/archive.c"
void *
_bfd_generic_read_ar_hdr (abfd)
     bfd *abfd;
{
  return _bfd_generic_read_ar_hdr_mag (abfd, (const char *) ((void *)0));
}




void *
_bfd_generic_read_ar_hdr_mag (abfd, mag)
     bfd *abfd;
     const char *mag;
{
  struct ar_hdr hdr;
  char *hdrp = (char *) &hdr;
  size_t parsed_size;
  struct areltdata *ared;
  char *filename = ((void *)0);
  bfd_size_type namelen = 0;
  bfd_size_type allocsize = sizeof (struct areltdata) + sizeof (struct ar_hdr);
  char *allocptr = 0;

  if (bfd_bread ((void *) hdrp, (bfd_size_type) sizeof (struct ar_hdr), abfd)
      != sizeof (struct ar_hdr))
    {
      if (bfd_get_error () != bfd_error_system_call)
        bfd_set_error (bfd_error_no_more_archived_files);
      return ((void *)0);
    }
  if (strncmp (hdr.ar_fmag, "`\012", 2) != 0
      && (mag == ((void *)0)
          || strncmp (hdr.ar_fmag, mag, 2) != 0))
    {
      bfd_set_error (bfd_error_malformed_archive);
      return ((void *)0);
    }

  errno = 0;
  parsed_size = strtol (hdr.ar_size, ((void *)0), 10);
  if (errno != 0)
    {
      bfd_set_error (bfd_error_malformed_archive);
      return ((void *)0);
    }




  if ((hdr.ar_name[0] == '/'
       || (hdr.ar_name[0] == ' '
           && memchr (hdr.ar_name, '/', ((abfd)->xvec->ar_max_namelen)) == ((void *)0)))
      && ((abfd)->tdata.aout_ar_data)->extended_names != ((void *)0))
    {
      filename = get_extended_arelt_filename (abfd, hdr.ar_name);
      if (filename == ((void *)0))
        {
          bfd_set_error (bfd_error_malformed_archive);
          return ((void *)0);
        }
    }


  else if (hdr.ar_name[0] == '#'
           && hdr.ar_name[1] == '1'
           && hdr.ar_name[2] == '/'
           && (_sch_istable[(hdr.ar_name[3]) & 0xff] & (unsigned short)(_sch_isdigit)))
    {

      namelen = atoi (&hdr.ar_name[3]);
      allocsize += namelen + 1;
      parsed_size -= namelen;

      allocptr = bfd_zalloc (abfd, allocsize);
      if (allocptr == ((void *)0))
        return ((void *)0);
      filename = (allocptr
                  + sizeof (struct areltdata)
                  + sizeof (struct ar_hdr));
      if (bfd_bread (filename, namelen, abfd) != namelen)
        {
          if (bfd_get_error () != bfd_error_system_call)
            bfd_set_error (bfd_error_no_more_archived_files);
          return ((void *)0);
        }
      filename[namelen] = '\0';
    }
  else
    {




      char *e;
      e = memchr (hdr.ar_name, '\0', ((abfd)->xvec->ar_max_namelen));
      if (e == ((void *)0))
        {
          e = memchr (hdr.ar_name, '/', ((abfd)->xvec->ar_max_namelen));
          if (e == ((void *)0))
            e = memchr (hdr.ar_name, ' ', ((abfd)->xvec->ar_max_namelen));
        }

      if (e != ((void *)0))
        namelen = e - hdr.ar_name;
      else
        {


          namelen = ((abfd)->xvec->ar_max_namelen);
        }

      allocsize += namelen + 1;
    }

  if (!allocptr)
    {
      allocptr = bfd_zalloc (abfd, allocsize);
      if (allocptr == ((void *)0))
        return ((void *)0);
    }

  ared = (struct areltdata *) allocptr;

  ared->arch_header = allocptr + sizeof (struct areltdata);
  memcpy ((char *) ared->arch_header, (char *) &hdr, sizeof (struct ar_hdr));
  ared->parsed_size = parsed_size;

  if (filename != ((void *)0))
    ared->filename = filename;
  else
    {
      ared->filename = allocptr + (sizeof (struct areltdata) +
                                   sizeof (struct ar_hdr));
      if (namelen)
        memcpy (ared->filename, hdr.ar_name, (size_t) namelen);
      ared->filename[namelen] = '\0';
    }

  return (void *) ared;
}





bfd *
_bfd_get_elt_at_filepos (archive, filepos)
     bfd *archive;
     file_ptr filepos;
{
  struct areltdata *new_areldata;
  bfd *n_nfd;

  n_nfd = _bfd_look_for_bfd_in_cache (archive, filepos);
  if (n_nfd)
    return n_nfd;

  if (0 > bfd_seek (archive, filepos, 0))
    return ((void *)0);

  if ((new_areldata = (struct areltdata *) ((*((archive)->xvec->_bfd_read_ar_hdr_fn)) (archive))) == ((void *)0))
    return ((void *)0);

  n_nfd = _bfd_create_empty_archive_element_shell (archive);
  if (n_nfd == ((void *)0))
    {
      bfd_release (archive, (void *) new_areldata);
      return ((void *)0);
    }

  n_nfd->origin = bfd_tell (archive);
  n_nfd->arelt_data = (void *) new_areldata;
  n_nfd->filename = new_areldata->filename;

  if (_bfd_add_bfd_to_archive_cache (archive, filepos, n_nfd))
    return n_nfd;


  bfd_release (archive, (void *) n_nfd);
  bfd_release (archive, (void *) new_areldata);
  return ((void *)0);
}




bfd *
_bfd_generic_get_elt_at_index (abfd, index)
     bfd *abfd;
     symindex index;
{
  carsym *entry;

  entry = ((abfd)->tdata.aout_ar_data)->symdefs + index;
  return _bfd_get_elt_at_filepos (abfd, entry->file_offset);
}
# 558 "/auto/gabellin/prova/src/binutils-2.12/bfd/archive.c"
bfd *
bfd_openr_next_archived_file (archive, last_file)
     bfd *archive;
     bfd *last_file;
{
  if ((((archive)->format) != bfd_archive) ||
      (archive->direction == write_direction))
    {
      bfd_set_error (bfd_error_invalid_operation);
      return ((void *)0);
    }

  return ((*((archive)->xvec->openr_next_archived_file)) (archive, last_file));



}

bfd *
bfd_generic_openr_next_archived_file (archive, last_file)
     bfd *archive;
     bfd *last_file;
{
  file_ptr filestart;

  if (!last_file)
    filestart = ((archive)->tdata.aout_ar_data)->first_file_filepos;
  else
    {
      unsigned int size = (((struct areltdata *)((last_file)->arelt_data))->parsed_size);



      filestart = last_file->origin + size;
      filestart += filestart % 2;
    }

  return _bfd_get_elt_at_filepos (archive, filestart);
}

const bfd_target *
bfd_generic_archive_p (abfd)
     bfd *abfd;
{
  struct artdata *tdata_hold;
  char armag[8 + 1];
  bfd_size_type amt;

  tdata_hold = abfd->tdata.aout_ar_data;

  if (bfd_bread ((void *) armag, (bfd_size_type) 8, abfd) != 8)
    {
      if (bfd_get_error () != bfd_error_system_call)
        bfd_set_error (bfd_error_wrong_format);
      return ((void *)0);
    }





  if (strncmp (armag, "!<arch>\012", 8) != 0 &&
      strncmp (armag, "!<bout>\012", 8) != 0)
    return 0;




  amt = sizeof (struct artdata);
  abfd->tdata.aout_ar_data = (struct artdata *) bfd_zalloc (abfd, amt);

  if (((abfd)->tdata.aout_ar_data) == ((void *)0))
    return ((void *)0);

  ((abfd)->tdata.aout_ar_data)->first_file_filepos = 8;
  ((abfd)->tdata.aout_ar_data)->cache = ((void *)0);
  ((abfd)->tdata.aout_ar_data)->archive_head = ((void *)0);
  ((abfd)->tdata.aout_ar_data)->symdefs = ((void *)0);
  ((abfd)->tdata.aout_ar_data)->extended_names = ((void *)0);
  ((abfd)->tdata.aout_ar_data)->tdata = ((void *)0);

  if (!((*((abfd)->xvec->_bfd_slurp_armap)) (abfd)))
    {
      bfd_release (abfd, ((abfd)->tdata.aout_ar_data));
      abfd->tdata.aout_ar_data = tdata_hold;
      if (bfd_get_error () != bfd_error_system_call)
        bfd_set_error (bfd_error_wrong_format);
      return ((void *)0);
    }

  if (!((*((abfd)->xvec->_bfd_slurp_extended_name_table)) (abfd)))
    {
      bfd_release (abfd, ((abfd)->tdata.aout_ar_data));
      abfd->tdata.aout_ar_data = tdata_hold;
      if (bfd_get_error () != bfd_error_system_call)
        bfd_set_error (bfd_error_wrong_format);
      return ((void *)0);
    }

  if (((abfd)->has_armap))
    {
      bfd *first;
# 672 "/auto/gabellin/prova/src/binutils-2.12/bfd/archive.c"
      first = bfd_openr_next_archived_file (abfd, (bfd *) ((void *)0));
      if (first != ((void *)0))
        {
          boolean fail;

          first->target_defaulted = false;
          fail = false;
          if (bfd_check_format (first, bfd_object)
              && first->xvec != abfd->xvec)
            {
# 691 "/auto/gabellin/prova/src/binutils-2.12/bfd/archive.c"
              bfd_set_error (bfd_error_wrong_object_format);
              return ((void *)0);
            }

        }
    }

  return abfd->xvec;
}







#define BSD_SYMDEF_SIZE 8


#define BSD_SYMDEF_OFFSET_SIZE 4


#define BSD_SYMDEF_COUNT_SIZE 4


#define BSD_STRING_COUNT_SIZE 4



static boolean
do_slurp_bsd_armap (abfd)
     bfd *abfd;
{
  struct areltdata *mapdata;
  unsigned int counter;
  bfd_byte *raw_armap, *rbase;
  struct artdata *ardata = ((abfd)->tdata.aout_ar_data);
  char *stringbase;
  bfd_size_type parsed_size, amt;
  carsym *set;

  mapdata = (struct areltdata *) ((*((abfd)->xvec->_bfd_read_ar_hdr_fn)) (abfd));
  if (mapdata == ((void *)0))
    return false;
  parsed_size = mapdata->parsed_size;
  bfd_release (abfd, (void *) mapdata);

  raw_armap = (bfd_byte *) bfd_zalloc (abfd, parsed_size);
  if (raw_armap == (bfd_byte *) ((void *)0))
    return false;

  if (bfd_bread ((void *) raw_armap, parsed_size, abfd) != parsed_size)
    {
      if (bfd_get_error () != bfd_error_system_call)
        bfd_set_error (bfd_error_malformed_archive);
    byebye:
      bfd_release (abfd, (void *) raw_armap);
      return false;
    }

  ardata->symdef_count = ((*(((abfd))->xvec->bfd_h_getx32)) ((bfd_byte *) (raw_armap))) / 8;

  if (ardata->symdef_count * 8 >
      parsed_size - 4)
    {

      bfd_set_error (bfd_error_wrong_format);
      goto byebye;
    }

  ardata->cache = 0;
  rbase = raw_armap + 4;
  stringbase = ((char *) rbase
                + ardata->symdef_count * 8
                + 4);
  amt = (bfd_size_type) ardata->symdef_count * sizeof (carsym);
  ardata->symdefs = (carsym *) bfd_alloc (abfd, amt);
  if (!ardata->symdefs)
    return false;

  for (counter = 0, set = ardata->symdefs;
       counter < ardata->symdef_count;
       counter++, set++, rbase += 8)
    {
      set->name = ((*(((abfd))->xvec->bfd_h_getx32)) ((bfd_byte *) (rbase))) + stringbase;
      set->file_offset = ((*(((abfd))->xvec->bfd_h_getx32)) ((bfd_byte *) (rbase + 4)));
    }

  ardata->first_file_filepos = bfd_tell (abfd);

  ardata->first_file_filepos += (ardata->first_file_filepos) % 2;



  ((abfd)->has_armap) = true;
  return true;
}



static boolean
do_slurp_coff_armap (abfd)
     bfd *abfd;
{
  struct areltdata *mapdata;
  int *raw_armap, *rawptr;
  struct artdata *ardata = ((abfd)->tdata.aout_ar_data);
  char *stringbase;
  bfd_size_type stringsize;
  unsigned int parsed_size;
  carsym *carsyms;
  bfd_size_type nsymz;
  bfd_vma (*swap) (const bfd_byte *);
  char int_buf[sizeof (long)];
  bfd_size_type carsym_size, ptrsize;
  unsigned int i;

  mapdata = (struct areltdata *) ((*((abfd)->xvec->_bfd_read_ar_hdr_fn)) (abfd));
  if (mapdata == ((void *)0))
    return false;
  parsed_size = mapdata->parsed_size;
  bfd_release (abfd, (void *) mapdata);

  if (bfd_bread ((void *) int_buf, (bfd_size_type) 4, abfd) != 4)
    {
      if (bfd_get_error () != bfd_error_system_call)
        bfd_set_error (bfd_error_malformed_archive);
      return false;
    }


  swap = bfd_getb32;
  nsymz = bfd_getb32 ((void *) int_buf);
  stringsize = parsed_size - (4 * nsymz) - 4;







  if (stringsize > 0xfffff
      && bfd_get_arch (abfd) == bfd_arch_i960
      && ((abfd)->xvec->flavour) == bfd_target_coff_flavour)
    {

      nsymz = bfd_getl32 ((void *) int_buf);
      stringsize = parsed_size - (4 * nsymz) - 4;
      swap = bfd_getl32;
    }





  carsym_size = (nsymz * sizeof (carsym));
  ptrsize = (4 * nsymz);

  ardata->symdefs = (carsym *) bfd_zalloc (abfd, carsym_size + stringsize + 1);
  if (ardata->symdefs == ((void *)0))
    return false;
  carsyms = ardata->symdefs;
  stringbase = ((char *) ardata->symdefs) + carsym_size;


  raw_armap = (int *) bfd_alloc (abfd, ptrsize);
  if (raw_armap == ((void *)0))
    goto release_symdefs;
  if (bfd_bread ((void *) raw_armap, ptrsize, abfd) != ptrsize
      || (bfd_bread ((void *) stringbase, stringsize, abfd) != stringsize))
    {
      if (bfd_get_error () != bfd_error_system_call)
        bfd_set_error (bfd_error_malformed_archive);
      goto release_raw_armap;
    }


  for (i = 0; i < nsymz; i++)
    {
      rawptr = raw_armap + i;
      carsyms->file_offset = swap ((void *) rawptr);
      carsyms->name = stringbase;
      stringbase += strlen (stringbase) + 1;
      carsyms++;
    }
  *stringbase = 0;

  ardata->symdef_count = nsymz;
  ardata->first_file_filepos = bfd_tell (abfd);

  ardata->first_file_filepos += (ardata->first_file_filepos) % 2;

  ((abfd)->has_armap) = true;
  bfd_release (abfd, (void *) raw_armap);


  {
    struct areltdata *tmp;

    bfd_seek (abfd, ardata->first_file_filepos, 0);
    tmp = (struct areltdata *) ((*((abfd)->xvec->_bfd_read_ar_hdr_fn)) (abfd));
    if (tmp != ((void *)0))
      {
        if (tmp->arch_header[0] == '/'
            && tmp->arch_header[1] == ' ')
          {
            ardata->first_file_filepos +=
              (tmp->parsed_size + sizeof (struct ar_hdr) + 1) & ~(unsigned) 1;
          }
        bfd_release (abfd, tmp);
      }
  }

  return true;

release_raw_armap:
  bfd_release (abfd, (void *) raw_armap);
release_symdefs:
  bfd_release (abfd, (void *) (ardata)->symdefs);
  return false;
}




boolean
bfd_slurp_armap (abfd)
     bfd *abfd;
{
  char nextname[17];
  int i = bfd_bread ((void *) nextname, (bfd_size_type) 16, abfd);

  if (i == 0)
    return true;
  if (i != 16)
    return false;

  if (bfd_seek (abfd, (file_ptr) -16, 1) != 0)
    return false;

  if (!strncmp (nextname, "__.SYMDEF       ", 16)
      || !strncmp (nextname, "__.SYMDEF/      ", 16))
    return do_slurp_bsd_armap (abfd);
  else if (!strncmp (nextname, "/               ", 16))
    return do_slurp_coff_armap (abfd);
  else if (!strncmp (nextname, "/SYM64/         ", 16))
    {


      return bfd_elf64_archive_slurp_armap (abfd);




    }

  ((abfd)->has_armap) = false;
  return true;
}






#define HPUX_SYMDEF_COUNT_SIZE 2

boolean
bfd_slurp_bsd_armap_f2 (abfd)
     bfd *abfd;
{
  struct areltdata *mapdata;
  char nextname[17];
  unsigned int counter;
  bfd_byte *raw_armap, *rbase;
  struct artdata *ardata = ((abfd)->tdata.aout_ar_data);
  char *stringbase;
  unsigned int stringsize;
  bfd_size_type amt;
  carsym *set;
  int i = bfd_bread ((void *) nextname, (bfd_size_type) 16, abfd);

  if (i == 0)
    return true;
  if (i != 16)
    return false;


  if (bfd_seek (abfd, (file_ptr) -16, 1) != 0)
    return false;

  if (!strncmp (nextname, "__.SYMDEF       ", 16)
      || !strncmp (nextname, "__.SYMDEF/      ", 16))
    return do_slurp_bsd_armap (abfd);

  if (strncmp (nextname, "/               ", 16))
    {
      ((abfd)->has_armap) = false;
      return true;
    }

  mapdata = (struct areltdata *) ((*((abfd)->xvec->_bfd_read_ar_hdr_fn)) (abfd));
  if (mapdata == ((void *)0))
    return false;

  amt = mapdata->parsed_size;
  raw_armap = (bfd_byte *) bfd_zalloc (abfd, amt);
  if (raw_armap == ((void *)0))
    {
    byebye:
      bfd_release (abfd, (void *) mapdata);
      return false;
    }

  if (bfd_bread ((void *) raw_armap, amt, abfd) != amt)
    {
      if (bfd_get_error () != bfd_error_system_call)
        bfd_set_error (bfd_error_malformed_archive);
    byebyebye:
      bfd_release (abfd, (void *) raw_armap);
      goto byebye;
    }

  ardata->symdef_count = ((*(((abfd))->xvec->bfd_h_getx16)) ((bfd_byte *) ((void *) raw_armap)));

  if (ardata->symdef_count * 8
      > mapdata->parsed_size - 2)
    {

      bfd_set_error (bfd_error_wrong_format);
      goto byebyebye;
    }

  ardata->cache = 0;

  stringsize = ((*(((abfd))->xvec->bfd_h_getx32)) ((bfd_byte *) (raw_armap + 2)));

  stringbase = ((char *) raw_armap
                + 2
                + 4);
  rbase = (bfd_byte *) stringbase + stringsize;
  amt = (bfd_size_type) ardata->symdef_count * 8;
  ardata->symdefs = (carsym *) bfd_alloc (abfd, amt);
  if (!ardata->symdefs)
    return false;

  for (counter = 0, set = ardata->symdefs;
       counter < ardata->symdef_count;
       counter++, set++, rbase += 8)
    {
      set->name = ((*(((abfd))->xvec->bfd_h_getx32)) ((bfd_byte *) (rbase))) + stringbase;
      set->file_offset = ((*(((abfd))->xvec->bfd_h_getx32)) ((bfd_byte *) (rbase + 4)));
    }

  ardata->first_file_filepos = bfd_tell (abfd);

  ardata->first_file_filepos += (ardata->first_file_filepos) % 2;



  ((abfd)->has_armap) = true;
  return true;
}
# 1067 "/auto/gabellin/prova/src/binutils-2.12/bfd/archive.c"
boolean
_bfd_slurp_extended_name_table (abfd)
     bfd *abfd;
{
  char nextname[17];
  struct areltdata *namedata;
  bfd_size_type amt;



  bfd_seek (abfd, ((abfd)->tdata.aout_ar_data)->first_file_filepos, 0);
  if (bfd_bread ((void *) nextname, (bfd_size_type) 16, abfd) == 16)
    {
      if (bfd_seek (abfd, (file_ptr) -16, 1) != 0)
        return false;

      if (strncmp (nextname, "ARFILENAMES/    ", 16) != 0 &&
          strncmp (nextname, "//              ", 16) != 0)
        {
          ((abfd)->tdata.aout_ar_data)->extended_names = ((void *)0);
          return true;
        }

      namedata = (struct areltdata *) ((*((abfd)->xvec->_bfd_read_ar_hdr_fn)) (abfd));
      if (namedata == ((void *)0))
        return false;

      amt = namedata->parsed_size;
      ((abfd)->tdata.aout_ar_data)->extended_names = bfd_zalloc (abfd, amt);
      if (((abfd)->tdata.aout_ar_data)->extended_names == ((void *)0))
        {
        byebye:
          bfd_release (abfd, (void *) namedata);
          return false;
        }

      if (bfd_bread ((void *) ((abfd)->tdata.aout_ar_data)->extended_names, amt, abfd) != amt)
        {
          if (bfd_get_error () != bfd_error_system_call)
            bfd_set_error (bfd_error_malformed_archive);
          bfd_release (abfd, (void *) (((abfd)->tdata.aout_ar_data)->extended_names));
          ((abfd)->tdata.aout_ar_data)->extended_names = ((void *)0);
          goto byebye;
        }






      {
        char *temp = ((abfd)->tdata.aout_ar_data)->extended_names;
        char *limit = temp + namedata->parsed_size;
        for (; temp < limit; ++temp)
          {
            if (*temp == '\012')
              temp[temp[-1] == '/' ? -1 : 0] = '\0';
            if (*temp == '\\')
              *temp = '/';
          }
      }


      ((abfd)->tdata.aout_ar_data)->first_file_filepos = bfd_tell (abfd);
      ((abfd)->tdata.aout_ar_data)->first_file_filepos +=
        (((abfd)->tdata.aout_ar_data)->first_file_filepos) % 2;






    }
  return true;
}
# 1183 "/auto/gabellin/prova/src/binutils-2.12/bfd/archive.c"
static const char *
normalize (abfd, file)
     bfd *abfd __attribute__ ((__unused__));
     const char *file;
{
  const char *filename = strrchr (file, '/');
# 1200 "/auto/gabellin/prova/src/binutils-2.12/bfd/archive.c"
  if (filename != (char *) ((void *)0))
    filename++;
  else
    filename = file;
  return filename;
}




boolean
_bfd_archive_bsd_construct_extended_name_table (abfd, tabloc, tablen, name)
     bfd *abfd;
     char **tabloc;
     bfd_size_type *tablen;
     const char **name;
{
  *name = "ARFILENAMES/";
  return _bfd_construct_extended_name_table (abfd, false, tabloc, tablen);
}



boolean
_bfd_archive_coff_construct_extended_name_table (abfd, tabloc, tablen, name)
     bfd *abfd;
     char **tabloc;
     bfd_size_type *tablen;
     const char **name;
{
  *name = "//";
  return _bfd_construct_extended_name_table (abfd, true, tabloc, tablen);
}
# 1242 "/auto/gabellin/prova/src/binutils-2.12/bfd/archive.c"
boolean
_bfd_construct_extended_name_table (abfd, trailing_slash, tabloc, tablen)
     bfd *abfd;
     boolean trailing_slash;
     char **tabloc;
     bfd_size_type *tablen;
{
  unsigned int maxname = abfd->xvec->ar_max_namelen;
  bfd_size_type total_namelen = 0;
  bfd *current;
  char *strptr;

  *tablen = 0;


  for (current = abfd->archive_head; current != ((void *)0); current = current->next)
    {
      const char *normal;
      unsigned int thislen;

      normal = normalize (current, current->filename);
      if (normal == ((void *)0))
        return false;

      thislen = strlen (normal);

      if (thislen > maxname
          && (((abfd)->flags) & 0x400) != 0)
        thislen = maxname;

      if (thislen > maxname)
        {

          total_namelen += thislen + 1;
          if (trailing_slash)
            {

              ++total_namelen;
            }
        }
      else
        {
          struct ar_hdr *hdr = ((struct ar_hdr *)((struct areltdata *) ((current)->arelt_data))->arch_header);
          if (strncmp (normal, hdr->ar_name, thislen) != 0
              || (thislen < sizeof hdr->ar_name
                  && hdr->ar_name[thislen] != ((current)->xvec->ar_pad_char)))
            {


              memcpy (hdr->ar_name, normal, thislen);
              if (thislen < maxname
                  || (thislen == maxname && thislen < sizeof hdr->ar_name))
                hdr->ar_name[thislen] = ((current)->xvec->ar_pad_char);
            }
        }
    }

  if (total_namelen == 0)
    return true;

  *tabloc = bfd_zalloc (abfd, total_namelen);
  if (*tabloc == ((void *)0))
    return false;

  *tablen = total_namelen;
  strptr = *tabloc;

  for (current = abfd->archive_head; current != ((void *)0); current =
       current->next)
    {
      const char *normal;
      unsigned int thislen;

      normal = normalize (current, current->filename);
      if (normal == ((void *)0))
        return false;

      thislen = strlen (normal);
      if (thislen > maxname)
        {



          struct ar_hdr *hdr = ((struct ar_hdr *)((struct areltdata *) ((current)->arelt_data))->arch_header);
          strcpy (strptr, normal);
          if (! trailing_slash)
            strptr[thislen] = '\012';
          else
            {
              strptr[thislen] = '/';
              strptr[thislen + 1] = '\012';
            }
          hdr->ar_name[0] = ((current)->xvec->ar_pad_char);


          sprintf ((hdr->ar_name) + 1, "%-d", (unsigned) (strptr - *tabloc));


          {
            char *temp = hdr->ar_name + 2;
            for (; temp < hdr->ar_name + maxname; temp++)
              if (*temp == '\0')
                *temp = ' ';
          }
          strptr += thislen + 1;
          if (trailing_slash)
            ++strptr;
        }
    }

  return true;
}
# 1388 "/auto/gabellin/prova/src/binutils-2.12/bfd/archive.c"
static struct areltdata *
bfd_ar_hdr_from_filesystem (abfd, filename, member)
     bfd *abfd;
     const char *filename;
     bfd *member;
{
  struct stat status;
  struct areltdata *ared;
  struct ar_hdr *hdr;
  char *temp, *temp1;
  bfd_size_type amt;

  if (member && (member->flags & 0x800) != 0)
    {

      struct bfd_in_memory *bim = (struct bfd_in_memory *) member->iostream;
      time (&status.st_mtime);
      status.st_uid = getuid ();
      status.st_gid = getgid ();
      status.st_mode = 0644;
      status.st_size = bim->size;
    }
  else if (stat (filename, &status) != 0)
    {
      bfd_set_error (bfd_error_system_call);
      return ((void *)0);
    }

  amt = sizeof (struct ar_hdr) + sizeof (struct areltdata);
  ared = (struct areltdata *) bfd_zalloc (abfd, amt);
  if (ared == ((void *)0))
    return ((void *)0);
  hdr = (struct ar_hdr *) (((char *) ared) + sizeof (struct areltdata));


  memset ((void *) hdr, ' ', sizeof (struct ar_hdr));

  strncpy (hdr->ar_fmag, "`\012", 2);


  sprintf ((hdr->ar_date), "%-12ld", (long) status.st_mtime);







    sprintf ((hdr->ar_uid), "%ld", (long) status.st_uid);







  sprintf ((hdr->ar_gid), "%ld", (long) status.st_gid);
  sprintf ((hdr->ar_mode), "%-8o", (unsigned int) status.st_mode);
  sprintf ((hdr->ar_size), "%-10ld", (long) status.st_size);



  temp = (char *) hdr;
  temp1 = temp + sizeof (struct ar_hdr) - 2;
  for (; temp < temp1; temp++)
    {
      if (*temp == '\0')
        *temp = ' ';
    }
  strncpy (hdr->ar_fmag, "`\012", 2);
  ared->parsed_size = status.st_size;
  ared->arch_header = (char *) hdr;

  return ared;
}






struct ar_hdr *bfd_special_undocumented_glue (bfd *, const char *);

struct ar_hdr *
bfd_special_undocumented_glue (abfd, filename)
     bfd *abfd;
     const char *filename;
{
  struct areltdata *ar_elt = bfd_ar_hdr_from_filesystem (abfd, filename, 0);
  if (ar_elt == ((void *)0))
    return ((void *)0);
  return (struct ar_hdr *) ar_elt->arch_header;
}



int
bfd_generic_stat_arch_elt (abfd, buf)
     bfd *abfd;
     struct stat *buf;
{
  struct ar_hdr *hdr;
  char *aloser;

  if (abfd->arelt_data == ((void *)0))
    {
      bfd_set_error (bfd_error_invalid_operation);
      return -1;
    }

  hdr = ((struct ar_hdr *)((struct areltdata *) ((abfd)->arelt_data))->arch_header);

#define foo(arelt,stelt,size) buf->stelt = strtol (hdr->arelt, &aloser, size); if (aloser == hdr->arelt) return -1;
# 1528 "/auto/gabellin/prova/src/binutils-2.12/bfd/archive.c"
#define foo2(arelt,stelt,size) foo (arelt, stelt, size)


  buf->st_mtime = strtol (hdr->ar_date, &aloser, 10); if (aloser == hdr->ar_date) return -1;;
  buf->st_uid = strtol (hdr->ar_uid, &aloser, 10); if (aloser == hdr->ar_uid) return -1;;
  buf->st_gid = strtol (hdr->ar_gid, &aloser, 10); if (aloser == hdr->ar_gid) return -1;;
  buf->st_mode = strtol (hdr->ar_mode, &aloser, 8); if (aloser == hdr->ar_mode) return -1;;

  buf->st_size = ((struct areltdata *) ((abfd)->arelt_data))->parsed_size;

  return 0;
}

void
bfd_dont_truncate_arname (abfd, pathname, arhdr)
     bfd *abfd;
     const char *pathname;
     char *arhdr;
{





  struct ar_hdr *hdr = (struct ar_hdr *) arhdr;
  size_t length;
  const char *filename;
  size_t maxlen = ((abfd)->xvec->ar_max_namelen);

  if ((((abfd)->flags) & 0x400) != 0)
    {
      bfd_bsd_truncate_arname (abfd, pathname, arhdr);
      return;
    }

  filename = normalize (abfd, pathname);
  if (filename == ((void *)0))
    {

      _bfd_abort ("/auto/gabellin/prova/src/binutils-2.12/bfd/archive.c", 1567, __PRETTY_FUNCTION__);
    }

  length = strlen (filename);

  if (length <= maxlen)
    memcpy (hdr->ar_name, filename, length);


  if (length < maxlen
      || (length == maxlen && length < sizeof hdr->ar_name))
    (hdr->ar_name)[length] = ((abfd)->xvec->ar_pad_char);
}

void
bfd_bsd_truncate_arname (abfd, pathname, arhdr)
     bfd *abfd;
     const char *pathname;
     char *arhdr;
{
  struct ar_hdr *hdr = (struct ar_hdr *) arhdr;
  size_t length;
  const char *filename = strrchr (pathname, '/');
  size_t maxlen = ((abfd)->xvec->ar_max_namelen);
# 1603 "/auto/gabellin/prova/src/binutils-2.12/bfd/archive.c"
  if (filename == ((void *)0))
    filename = pathname;
  else
    ++filename;

  length = strlen (filename);

  if (length <= maxlen)
    memcpy (hdr->ar_name, filename, length);
  else
    {

      memcpy (hdr->ar_name, filename, maxlen);
      length = maxlen;
    }

  if (length < maxlen)
    (hdr->ar_name)[length] = ((abfd)->xvec->ar_pad_char);
}
# 1632 "/auto/gabellin/prova/src/binutils-2.12/bfd/archive.c"
void
bfd_gnu_truncate_arname (abfd, pathname, arhdr)
     bfd *abfd;
     const char *pathname;
     char *arhdr;
{
  struct ar_hdr *hdr = (struct ar_hdr *) arhdr;
  size_t length;
  const char *filename = strrchr (pathname, '/');
  size_t maxlen = ((abfd)->xvec->ar_max_namelen);
# 1654 "/auto/gabellin/prova/src/binutils-2.12/bfd/archive.c"
  if (filename == ((void *)0))
    filename = pathname;
  else
    ++filename;

  length = strlen (filename);

  if (length <= maxlen)
    memcpy (hdr->ar_name, filename, length);
  else
    {
      memcpy (hdr->ar_name, filename, maxlen);
      if ((filename[length - 2] == '.') && (filename[length - 1] == 'o'))
        {
          hdr->ar_name[maxlen - 2] = '.';
          hdr->ar_name[maxlen - 1] = 'o';
        }
      length = maxlen;
    }

  if (length < 16)
    (hdr->ar_name)[length] = ((abfd)->xvec->ar_pad_char);
}



boolean
_bfd_write_archive_contents (arch)
     bfd *arch;
{
  bfd *current;
  char *etable = ((void *)0);
  bfd_size_type elength = 0;
  const char *ename = ((void *)0);
  boolean makemap = ((arch)->has_armap);
  boolean hasobjects = false;
  bfd_size_type wrote;
  unsigned int i;
  int tries;




  for (current = arch->archive_head; current; current = current->next)
    {





      if (((current)->direction == write_direction || (current)->direction == both_direction))
        {
          bfd_set_error (bfd_error_invalid_operation);
          return false;
        }
      if (!current->arelt_data)
        {
          current->arelt_data =
            (void *) bfd_ar_hdr_from_filesystem (arch, current->filename, current);
          if (!current->arelt_data)
            return false;


          ((*((arch)->xvec->_bfd_truncate_arname)) (arch, current->filename, (char *) ((struct ar_hdr *)((struct areltdata *) ((current)->arelt_data))->arch_header)));


        }

      if (makemap && ! hasobjects)
        {
          if ((bfd_check_format (current, bfd_object))



            )
            hasobjects = true;
        }
    }

  if (!((*((arch)->xvec->_bfd_construct_extended_name_table)) (arch, &etable, &elength, &ename)))

    return false;

  if (bfd_seek (arch, (file_ptr) 0, 0) != 0)
    return false;



  wrote = bfd_bwrite ("!<arch>\012", (bfd_size_type) 8, arch);

  if (wrote != 8)
    return false;

  if (makemap && hasobjects)
    {
      if (_bfd_compute_and_write_armap (arch, (unsigned int) elength) != true)
        return false;
    }

  if (elength != 0)
    {
      struct ar_hdr hdr;

      memset ((char *) (&hdr), 0, sizeof (struct ar_hdr));
      strcpy (hdr.ar_name, ename);

      sprintf (&(hdr.ar_size[0]), "%-10d",
               (int) ((elength + 1) & ~(bfd_size_type) 1));
      strncpy (hdr.ar_fmag, "`\012", 2);
      for (i = 0; i < sizeof (struct ar_hdr); i++)
        if (((char *) (&hdr))[i] == '\0')
          (((char *) (&hdr))[i]) = ' ';
      if ((bfd_bwrite ((void *) &hdr, (bfd_size_type) sizeof (struct ar_hdr), arch)
           != sizeof (struct ar_hdr))
          || bfd_bwrite (etable, elength, arch) != elength)
        return false;
      if ((elength % 2) == 1)
        {
          if (bfd_bwrite ("\012", (bfd_size_type) 1, arch) != 1)
            return false;
        }
    }

  for (current = arch->archive_head; current; current = current->next)
    {
      char buffer[8192];
      unsigned int remaining = (((struct areltdata *)((current)->arelt_data))->parsed_size);
      struct ar_hdr *hdr = ((struct ar_hdr *)((struct areltdata *) ((current)->arelt_data))->arch_header);


      if (bfd_bwrite ((void *) hdr, (bfd_size_type) sizeof (*hdr), arch)
          != sizeof (*hdr))
        return false;
      if (bfd_seek (current, (file_ptr) 0, 0) != 0)
        return false;
      while (remaining)
        {
          unsigned int amt = 8192;
          if (amt > remaining)
            amt = remaining;
          errno = 0;
          if (bfd_bread (buffer, (bfd_size_type) amt, current) != amt)
            {
              if (bfd_get_error () != bfd_error_system_call)
                bfd_set_error (bfd_error_malformed_archive);
              return false;
            }
          if (bfd_bwrite (buffer, (bfd_size_type) amt, arch) != amt)
            return false;
          remaining -= amt;
        }
      if (((((struct areltdata *)((current)->arelt_data))->parsed_size) % 2) == 1)
        {
          if (bfd_bwrite ("\012", (bfd_size_type) 1, arch) != 1)
            return false;
        }
    }

  if (makemap && hasobjects)
    {






      tries = 1;
      do
        {
          if (((*((arch)->xvec->_bfd_update_armap_timestamp)) (arch)))
            break;
          (*_bfd_error_handler)
            (dcgettext ("bfd", "Warning: writing archive was slow: rewriting timestamp\n", 6));
        }
      while (++tries < 6);
    }

  return true;
}



boolean
_bfd_compute_and_write_armap (arch, elength)
     bfd *arch;
     unsigned int elength;
{
  char *first_name = ((void *)0);
  bfd *current;
  file_ptr elt_no = 0;
  struct orl *map = ((void *)0);
  unsigned int orl_max = 1024;
  unsigned int orl_count = 0;
  int stridx = 0;
  asymbol **syms = ((void *)0);
  long syms_max = 0;
  boolean ret;
  bfd_size_type amt;


  if (elength != 0)
    elength += sizeof (struct ar_hdr);
  elength += elength % 2;

  amt = (bfd_size_type) orl_max * sizeof (struct orl);
  map = (struct orl *) bfd_malloc (amt);
  if (map == ((void *)0))
    goto error_return;



  first_name = bfd_alloc (arch, (bfd_size_type) 1);
  if (first_name == ((void *)0))
    goto error_return;


  while (arch->archive_head &&
         strcmp (arch->archive_head->filename, "__.SYMDEF") == 0)
    arch->archive_head = arch->archive_head->next;


  for (current = arch->archive_head;
       current != (bfd *) ((void *)0);
       current = current->next, elt_no++)
    {
      if ((bfd_check_format (current, bfd_object) == true)
          && ((((current)->flags) & 0x10)))
        {
          long storage;
          long symcount;
          long src_count;

          storage = ((*((current)->xvec->_bfd_get_symtab_upper_bound)) (current));
          if (storage < 0)
            goto error_return;

          if (storage != 0)
            {
              if (storage > syms_max)
                {
                  if (syms_max > 0)
                    free (syms);
                  syms_max = storage;
                  syms = (asymbol **) bfd_malloc ((bfd_size_type) syms_max);
                  if (syms == ((void *)0))
                    goto error_return;
                }
              symcount = ((*((current)->xvec->_bfd_canonicalize_symtab)) (current, syms));
              if (symcount < 0)
                goto error_return;



              for (src_count = 0; src_count < symcount; src_count++)
                {
                  flagword flags = (syms[src_count])->flags;
                  asection *sec = syms[src_count]->section;

                  if ((flags & 0x02 ||
                       flags & 0x80 ||
                       flags & 0x2000 ||
                       (((sec)->flags & 0x8000) != 0))
                      && ! ((sec) == ((asection *) &bfd_und_section)))
                    {
                      bfd_size_type namelen;
                      struct orl *new_map;


                      if (orl_count == orl_max)
                        {
                          orl_max *= 2;
                          amt = (bfd_size_type) orl_max * sizeof (struct orl);
                          new_map = (struct orl *) bfd_realloc (map, amt);
                          if (new_map == (struct orl *) ((void *)0))
                            goto error_return;

                          map = new_map;
                        }

                      namelen = strlen (syms[src_count]->name);
                      amt = sizeof (char *);
                      map[orl_count].name = (char **) bfd_alloc (arch, amt);
                      if (map[orl_count].name == ((void *)0))
                        goto error_return;
                      *(map[orl_count].name) = bfd_alloc (arch, namelen + 1);
                      if (*(map[orl_count].name) == ((void *)0))
                        goto error_return;
                      strcpy (*(map[orl_count].name), syms[src_count]->name);
                      map[orl_count].u.abfd = current;
                      map[orl_count].namidx = stridx;

                      stridx += namelen + 1;
                      ++orl_count;
                    }
                }
            }



          if (! ((*((current)->xvec->_bfd_free_cached_info)) (current)))
            goto error_return;
        }
    }


  ret = ((*((arch)->xvec->write_armap)) (arch, elength, map, orl_count, stridx));


  if (syms_max > 0)
    free (syms);
  if (map != ((void *)0))
    free (map);
  if (first_name != ((void *)0))
    bfd_release (arch, first_name);

  return ret;

 error_return:
  if (syms_max > 0)
    free (syms);
  if (map != ((void *)0))
    free (map);
  if (first_name != ((void *)0))
    bfd_release (arch, first_name);

  return false;
}

boolean
bsd_write_armap (arch, elength, map, orl_count, stridx)
     bfd *arch;
     unsigned int elength;
     struct orl *map;
     unsigned int orl_count;
     int stridx;
{
  int padit = stridx & 1;
  unsigned int ranlibsize = orl_count * 8;
  unsigned int stringsize = stridx + padit;

  unsigned int mapsize = ranlibsize + stringsize + 8;
  file_ptr firstreal;
  bfd *current = arch->archive_head;
  bfd *last_elt = current;
  bfd_byte temp[4];
  unsigned int count;
  struct ar_hdr hdr;
  struct stat statbuf;
  unsigned int i;

  firstreal = mapsize + elength + sizeof (struct ar_hdr) + 8;

  stat (arch->filename, &statbuf);
  memset ((char *) (&hdr), 0, sizeof (struct ar_hdr));
  sprintf (hdr.ar_name, "__.SYMDEF");

  ((arch)->tdata.aout_ar_data)->armap_timestamp = statbuf.st_mtime + 60;
  ((arch)->tdata.aout_ar_data)->armap_datepos = (8
                                      + ((size_t) &((struct ar_hdr *)0)->ar_date[0]));
  sprintf (hdr.ar_date, "%ld", ((arch)->tdata.aout_ar_data)->armap_timestamp);
  sprintf (hdr.ar_uid, "%ld", (long) getuid ());
  sprintf (hdr.ar_gid, "%ld", (long) getgid ());
  sprintf (hdr.ar_size, "%-10d", (int) mapsize);
  strncpy (hdr.ar_fmag, "`\012", 2);
  for (i = 0; i < sizeof (struct ar_hdr); i++)
    if (((char *) (&hdr))[i] == '\0')
      (((char *) (&hdr))[i]) = ' ';
  if (bfd_bwrite ((void *) &hdr, (bfd_size_type) sizeof (struct ar_hdr), arch)
      != sizeof (struct ar_hdr))
    return false;
  ((*(((arch))->xvec->bfd_h_putx32)) ((bfd_vma) (ranlibsize), (bfd_byte *) (temp)));
  if (bfd_bwrite (temp, (bfd_size_type) sizeof (temp), arch) != sizeof (temp))
    return false;

  for (count = 0; count < orl_count; count++)
    {
      bfd_byte buf[8];

      if (map[count].u.abfd != last_elt)
        {
          do
            {
              firstreal += (((struct areltdata *)((current)->arelt_data))->parsed_size) + sizeof (struct ar_hdr);
              firstreal += firstreal % 2;
              current = current->next;
            }
          while (current != map[count].u.abfd);
        }

      last_elt = current;
      ((*(((arch))->xvec->bfd_h_putx32)) ((bfd_vma) (map[count].namidx), (bfd_byte *) (buf)));
      ((*(((arch))->xvec->bfd_h_putx32)) ((bfd_vma) (firstreal), (bfd_byte *) (buf + 4)));
      if (bfd_bwrite (buf, (bfd_size_type) 8, arch)
          != 8)
        return false;
    }


  ((*(((arch))->xvec->bfd_h_putx32)) ((bfd_vma) (stringsize), (bfd_byte *) (temp)));
  if (bfd_bwrite (temp, (bfd_size_type) sizeof (temp), arch) != sizeof (temp))
    return false;
  for (count = 0; count < orl_count; count++)
    {
      size_t len = strlen (*map[count].name) + 1;

      if (bfd_bwrite (*map[count].name, (bfd_size_type) len, arch) != len)
        return false;
    }



  if (padit)
    {
      if (bfd_bwrite ("", (bfd_size_type) 1, arch) != 1)
        return false;
    }

  return true;
}







boolean
_bfd_archive_bsd_update_armap_timestamp (arch)
     bfd *arch;
{
  struct stat archstat;
  struct ar_hdr hdr;
  unsigned int i;



  bfd_flush (arch);
  if (bfd_stat (arch, &archstat) == -1)
    {
      perror (dcgettext ("bfd", "Reading archive file mod timestamp", 6));


      return true;
    }
  if (archstat.st_mtime <= ((arch)->tdata.aout_ar_data)->armap_timestamp)

    return true;


  ((arch)->tdata.aout_ar_data)->armap_timestamp = archstat.st_mtime + 60;


  memset (hdr.ar_date, 0, sizeof (hdr.ar_date));
  sprintf (hdr.ar_date, "%ld", ((arch)->tdata.aout_ar_data)->armap_timestamp);
  for (i = 0; i < sizeof (hdr.ar_date); i++)
    if (hdr.ar_date[i] == '\0')
      (hdr.ar_date)[i] = ' ';


  ((arch)->tdata.aout_ar_data)->armap_datepos = (8
                                      + ((size_t) &((struct ar_hdr *)0)->ar_date[0]));
  if (bfd_seek (arch, ((arch)->tdata.aout_ar_data)->armap_datepos, 0) != 0
      || (bfd_bwrite (hdr.ar_date, (bfd_size_type) sizeof (hdr.ar_date), arch)
          != sizeof (hdr.ar_date)))
    {

      perror (dcgettext ("bfd", "Writing updated armap timestamp", 6));


      return true;
    }


  return false;
}
# 2144 "/auto/gabellin/prova/src/binutils-2.12/bfd/archive.c"
boolean
coff_write_armap (arch, elength, map, symbol_count, stridx)
     bfd *arch;
     unsigned int elength;
     struct orl *map;
     unsigned int symbol_count;
     int stridx;
{


  unsigned int ranlibsize = (symbol_count * 4) + 4;
  unsigned int stringsize = stridx;
  unsigned int mapsize = stringsize + ranlibsize;
  unsigned int archive_member_file_ptr;
  bfd *current = arch->archive_head;
  unsigned int count;
  struct ar_hdr hdr;
  unsigned int i;
  int padit = mapsize & 1;

  if (padit)
    mapsize++;


  archive_member_file_ptr = (mapsize
                             + elength
                             + sizeof (struct ar_hdr)
                             + 8);

  memset ((char *) (&hdr), 0, sizeof (struct ar_hdr));
  hdr.ar_name[0] = '/';
  sprintf (hdr.ar_size, "%-10d", (int) mapsize);
  sprintf (hdr.ar_date, "%ld", (long) time (((void *)0)));

  sprintf ((hdr.ar_uid), "%d", 0);
  sprintf ((hdr.ar_gid), "%d", 0);
  sprintf ((hdr.ar_mode), "%-7o", (unsigned) 0);
  strncpy (hdr.ar_fmag, "`\012", 2);

  for (i = 0; i < sizeof (struct ar_hdr); i++)
    if (((char *) (&hdr))[i] == '\0')
      (((char *) (&hdr))[i]) = ' ';



  if (bfd_bwrite ((void *) &hdr, (bfd_size_type) sizeof (struct ar_hdr), arch)
      != sizeof (struct ar_hdr))
    return false;

  bfd_write_bigendian_4byte_int (arch, symbol_count);







  current = arch->archive_head;
  count = 0;
  while (current != (bfd *) ((void *)0) && count < symbol_count)
    {



      while (count < symbol_count && map[count].u.abfd == current)
        {
          bfd_write_bigendian_4byte_int (arch, archive_member_file_ptr);
          count++;
        }

      archive_member_file_ptr += ((((struct areltdata *)((current)->arelt_data))->parsed_size)
                                  + sizeof (struct ar_hdr));

      archive_member_file_ptr += archive_member_file_ptr % 2;
      current = current->next;
    }


  for (count = 0; count < symbol_count; count++)
    {
      size_t len = strlen (*map[count].name) + 1;

      if (bfd_bwrite (*map[count].name, (bfd_size_type) len, arch) != len)
        return false;
    }



  if (padit)
    {
      if (bfd_bwrite ("", (bfd_size_type) 1, arch) != 1)
        return false;
    }

  return true;
}



More information about the Gcc-bugs mailing list