Put in marker for sysdep.h inclusion.
(int64_type, uint64_type): Define when using "long long" fallback for HOST_64_BIT.
This commit is contained in:
parent
0a3c15c302
commit
034a8a56a4
1 changed files with 52 additions and 10 deletions
62
bfd/bfd-in.h
62
bfd/bfd-in.h
|
@ -45,11 +45,28 @@ here. */
|
||||||
#include "ansidecl.h"
|
#include "ansidecl.h"
|
||||||
#include "obstack.h"
|
#include "obstack.h"
|
||||||
|
|
||||||
#define BFD_VERSION "2.1"
|
#define BFD_VERSION "2.2"
|
||||||
|
|
||||||
|
#define BFD_ARCH_SIZE @WORDSIZE@
|
||||||
|
|
||||||
|
#if BFD_ARCH_SIZE >= 64
|
||||||
|
#define BFD64
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef FOPEN_AUT /* WAG */
|
||||||
|
/* INSERT SYSDEP HERE */
|
||||||
|
/* END OF SYSDEP */
|
||||||
|
#endif
|
||||||
|
|
||||||
/* forward declaration */
|
/* forward declaration */
|
||||||
typedef struct _bfd bfd;
|
typedef struct _bfd bfd;
|
||||||
|
|
||||||
|
/* To squelch erroneous compiler warnings ("illegal pointer
|
||||||
|
combination") from the SVR3 compiler, we would like to typedef
|
||||||
|
boolean to int (it doesn't like functions which return boolean.
|
||||||
|
Making sure they are never implicitly declared to return int
|
||||||
|
doesn't seem to help). But this file is not configured based on
|
||||||
|
the host. */
|
||||||
/* General rules: functions which are boolean return true on success
|
/* General rules: functions which are boolean return true on success
|
||||||
and false on failure (unless they're a predicate). -- bfd.doc */
|
and false on failure (unless they're a predicate). -- bfd.doc */
|
||||||
/* I'm sure this is going to break something and someone is going to
|
/* I'm sure this is going to break something and someone is going to
|
||||||
|
@ -68,19 +85,31 @@ typedef enum bfd_boolean {false, true} boolean;
|
||||||
/* typedef off_t file_ptr; */
|
/* typedef off_t file_ptr; */
|
||||||
typedef long int file_ptr;
|
typedef long int file_ptr;
|
||||||
|
|
||||||
/* Support for different sizes of target format ints and addresses.
|
/* Support for different sizes of target format ints and addresses. If the
|
||||||
If the host implements--and wants BFD to use--64-bit values, it
|
host implements 64-bit values, it defines HOST_64_BIT to be the appropriate
|
||||||
defines HOST_64_BIT (in BFD and in every program that calls it --
|
type. Otherwise, this code will fall back on gcc's "long long" type if gcc
|
||||||
since this affects declarations in bfd.h). */
|
is being used. HOST_64_BIT must be defined in such a way as to be a valid
|
||||||
|
type name by itself or with "unsigned" prefixed. It should be a signed
|
||||||
|
type by itself.
|
||||||
|
|
||||||
|
If neither is the case, then compilation will fail if 64-bit targets are
|
||||||
|
requested. If you don't request any 64-bit targets, you should be safe. */
|
||||||
|
|
||||||
|
#ifdef BFD64
|
||||||
|
|
||||||
|
#if defined (__GNUC__) && !defined (HOST_64_BIT)
|
||||||
|
#define HOST_64_BIT long long
|
||||||
|
typedef HOST_64_BIT int64_type;
|
||||||
|
typedef unsigned HOST_64_BIT uint64_type;
|
||||||
|
#endif
|
||||||
|
|
||||||
#ifdef HOST_64_BIT
|
|
||||||
typedef unsigned HOST_64_BIT bfd_vma;
|
typedef unsigned HOST_64_BIT bfd_vma;
|
||||||
typedef HOST_64_BIT bfd_signed_vma;
|
typedef HOST_64_BIT bfd_signed_vma;
|
||||||
typedef unsigned HOST_64_BIT bfd_size_type;
|
typedef unsigned HOST_64_BIT bfd_size_type;
|
||||||
typedef unsigned HOST_64_BIT symvalue;
|
typedef unsigned HOST_64_BIT symvalue;
|
||||||
#define fprintf_vma(s,x) \
|
#define fprintf_vma(s,x) \
|
||||||
fprintf(s,"%08x%08x", uint64_typeHIGH(x), uint64_typeLOW(x))
|
fprintf(s,"%08x%08x", uint64_typeHIGH(x), uint64_typeLOW(x))
|
||||||
#else /* not HOST_64_BIT. */
|
#else /* not BFD64 */
|
||||||
|
|
||||||
/* Represent a target address. Also used as a generic unsigned type
|
/* Represent a target address. Also used as a generic unsigned type
|
||||||
which is guaranteed to be big enough to hold any arithmetic types
|
which is guaranteed to be big enough to hold any arithmetic types
|
||||||
|
@ -98,7 +127,7 @@ typedef unsigned long bfd_size_type;
|
||||||
|
|
||||||
/* Print a bfd_vma x on stream s. */
|
/* Print a bfd_vma x on stream s. */
|
||||||
#define fprintf_vma(s,x) fprintf(s, "%08lx", x)
|
#define fprintf_vma(s,x) fprintf(s, "%08lx", x)
|
||||||
#endif /* not HOST_64_BIT. */
|
#endif /* not BFD64 */
|
||||||
#define printf_vma(x) fprintf_vma(stdout,x)
|
#define printf_vma(x) fprintf_vma(stdout,x)
|
||||||
|
|
||||||
typedef unsigned int flagword; /* 32 bits of flags */
|
typedef unsigned int flagword; /* 32 bits of flags */
|
||||||
|
@ -253,11 +282,21 @@ typedef enum bfd_print_symbol
|
||||||
{
|
{
|
||||||
bfd_print_symbol_name,
|
bfd_print_symbol_name,
|
||||||
bfd_print_symbol_more,
|
bfd_print_symbol_more,
|
||||||
bfd_print_symbol_all,
|
bfd_print_symbol_all
|
||||||
bfd_print_symbol_nm /* Pretty format suitable for nm program. */
|
|
||||||
} bfd_print_symbol_type;
|
} bfd_print_symbol_type;
|
||||||
|
|
||||||
|
|
||||||
|
/* Information about a symbol that nm needs. */
|
||||||
|
|
||||||
|
typedef struct _symbol_info
|
||||||
|
{
|
||||||
|
symvalue value;
|
||||||
|
char type; /* */
|
||||||
|
CONST char *name; /* Symbol name. */
|
||||||
|
char stab_other; /* Unused. */
|
||||||
|
short stab_desc; /* Info for N_TYPE. */
|
||||||
|
CONST char *stab_name;
|
||||||
|
} symbol_info;
|
||||||
|
|
||||||
/* The code that implements targets can initialize a jump table with this
|
/* The code that implements targets can initialize a jump table with this
|
||||||
macro. It must name all its routines the same way (a prefix plus
|
macro. It must name all its routines the same way (a prefix plus
|
||||||
|
@ -268,8 +307,10 @@ typedef enum bfd_print_symbol
|
||||||
#ifndef CAT
|
#ifndef CAT
|
||||||
#ifdef __STDC__
|
#ifdef __STDC__
|
||||||
#define CAT(a,b) a##b
|
#define CAT(a,b) a##b
|
||||||
|
#define CAT3(a,b,c) a##b##c
|
||||||
#else
|
#else
|
||||||
#define CAT(a,b) a/**/b
|
#define CAT(a,b) a/**/b
|
||||||
|
#define CAT3(a,b,c) a/**/b/**/c
|
||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -291,6 +332,7 @@ CAT(NAME,_get_reloc_upper_bound),\
|
||||||
CAT(NAME,_canonicalize_reloc),\
|
CAT(NAME,_canonicalize_reloc),\
|
||||||
CAT(NAME,_make_empty_symbol),\
|
CAT(NAME,_make_empty_symbol),\
|
||||||
CAT(NAME,_print_symbol),\
|
CAT(NAME,_print_symbol),\
|
||||||
|
CAT(NAME,_get_symbol_info),\
|
||||||
CAT(NAME,_get_lineno),\
|
CAT(NAME,_get_lineno),\
|
||||||
CAT(NAME,_set_arch_mach),\
|
CAT(NAME,_set_arch_mach),\
|
||||||
CAT(NAME,_openr_next_archived_file),\
|
CAT(NAME,_openr_next_archived_file),\
|
||||||
|
|
Loading…
Add table
Reference in a new issue