diff options
Diffstat (limited to 'bfd')
-rw-r--r-- | bfd/ChangeLog | 5 | ||||
-rw-r--r-- | bfd/cache.c | 78 | ||||
-rw-r--r-- | bfd/libbfd-in.h | 5 | ||||
-rw-r--r-- | bfd/libbfd.h | 14 |
4 files changed, 28 insertions, 74 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog index deeea7e..ca0a483 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,5 +1,10 @@ 2005-10-27 Alan Modra <amodra@bigpond.net.au> + * cache.c (BFD_CACHE_MAX_OPEN): Make private to this file. + (bfd_last_cache, bfd_cache_lookup, bfd_cache_lookup_worker): Likewise. + * libbfd-in.h (bfd_cache_lookup_worker, bfd_last_cache): Delete. + * libbfd.h: Regenerate. + * hppabsd-core.c (hppabsd_core_core_file_p): Use bfd_stat, not fstat. * sco5-core.c (sco5_core_file_p): Likewise. * trad-core.c (trad_unix_core_file_p): Likewise. diff --git a/bfd/cache.c b/bfd/cache.c index 284b443..ca7caa9 100644 --- a/bfd/cache.c +++ b/bfd/cache.c @@ -1,7 +1,7 @@ /* BFD library -- caching of file descriptors. Copyright 1990, 1991, 1992, 1993, 1994, 1996, 2000, 2001, 2002, - 2003, 2004 Free Software Foundation, Inc. + 2003, 2004, 2005 Free Software Foundation, Inc. Hacked by Steve Chamberlain of Cygnus Support (steve@cygnus.com). @@ -45,36 +45,20 @@ SUBSECTION #include "libbfd.h" #include "libiberty.h" -/* -INTERNAL_FUNCTION - BFD_CACHE_MAX_OPEN macro - -DESCRIPTION - The maximum number of files which the cache will keep open at - one time. - -.#define BFD_CACHE_MAX_OPEN 10 +/* The maximum number of files which the cache will keep open at + one time. */ -*/ +#define BFD_CACHE_MAX_OPEN 10 /* The number of BFD files we have open. */ static int open_files; -/* -INTERNAL_FUNCTION - bfd_last_cache - -SYNOPSIS - extern bfd *bfd_last_cache; - -DESCRIPTION - Zero, or a pointer to the topmost BFD on the chain. This is - used by the <<bfd_cache_lookup>> macro in @file{libbfd.h} to - determine when it can avoid a function call. -*/ +/* Zero, or a pointer to the topmost BFD on the chain. This is + used by the <<bfd_cache_lookup>> macro in @file{libbfd.h} to + determine when it can avoid a function call. */ -bfd *bfd_last_cache = NULL; +static bfd *bfd_last_cache = NULL; /* Insert a BFD into the cache. */ @@ -169,40 +153,24 @@ close_one (void) return bfd_cache_delete (kill); } -/* - INTERNAL_FUNCTION - bfd_cache_lookup - - DESCRIPTION - Check to see if the required BFD is the same as the last one - looked up. If so, then it can use the stream in the BFD with - impunity, since it can't have changed since the last lookup; - otherwise, it has to perform the complicated lookup function. - - .#define bfd_cache_lookup(x) \ - . ((x) == bfd_last_cache ? \ - . (FILE *) (bfd_last_cache->iostream): \ - . bfd_cache_lookup_worker (x)) - - */ - -/* -INTERNAL_FUNCTION - bfd_cache_lookup_worker +/* Check to see if the required BFD is the same as the last one + looked up. If so, then it can use the stream in the BFD with + impunity, since it can't have changed since the last lookup; + otherwise, it has to perform the complicated lookup function. */ -SYNOPSIS - FILE *bfd_cache_lookup_worker (bfd *abfd); +#define bfd_cache_lookup(x) \ + ((x) == bfd_last_cache \ + ? (FILE *) (bfd_last_cache->iostream) \ + : bfd_cache_lookup_worker (x)) -DESCRIPTION - Called when the macro <<bfd_cache_lookup>> fails to find a - quick answer. Find a file descriptor for @var{abfd}. If - necessary, it open it. If there are already more than - <<BFD_CACHE_MAX_OPEN>> files open, it tries to close one first, to - avoid running out of file descriptors. It will return NULL - if it is unable to (re)open the @var{abfd}. -*/ +/* Called when the macro <<bfd_cache_lookup>> fails to find a + quick answer. Find a file descriptor for @var{abfd}. If + necessary, it open it. If there are already more than + <<BFD_CACHE_MAX_OPEN>> files open, it tries to close one first, to + avoid running out of file descriptors. It will return NULL + if it is unable to (re)open the @var{abfd}. */ -FILE * +static FILE * bfd_cache_lookup_worker (bfd *abfd) { bfd *orig_bfd = abfd; diff --git a/bfd/libbfd-in.h b/bfd/libbfd-in.h index 1b1789a..df46ae1 100644 --- a/bfd/libbfd-in.h +++ b/bfd/libbfd-in.h @@ -652,11 +652,6 @@ extern void _bfd_abort extern file_ptr real_ftell (FILE *file); extern int real_fseek (FILE *file, file_ptr offset, int whence); -FILE * bfd_cache_lookup_worker - (bfd *); - -extern bfd *bfd_last_cache; - /* List of supported target vectors, and the default vector (if bfd_default_vector[0] is NULL, there is no default). */ extern const bfd_target * const *bfd_target_vector; diff --git a/bfd/libbfd.h b/bfd/libbfd.h index 91f6f8b..ff1fde7 100644 --- a/bfd/libbfd.h +++ b/bfd/libbfd.h @@ -657,11 +657,6 @@ extern void _bfd_abort extern file_ptr real_ftell (FILE *file); extern int real_fseek (FILE *file, file_ptr offset, int whence); -FILE * bfd_cache_lookup_worker - (bfd *); - -extern bfd *bfd_last_cache; - /* List of supported target vectors, and the default vector (if bfd_default_vector[0] is NULL, there is no default). */ extern const bfd_target * const *bfd_target_vector; @@ -767,21 +762,12 @@ struct _bfd_window_internal { unsigned mapped : 1; /* 1 = mmap, 0 = malloc */ }; /* Extracted from cache.c. */ -#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)) bfd_boolean bfd_cache_init (bfd *abfd); bfd_boolean bfd_cache_close (bfd *abfd); FILE* bfd_open_file (bfd *abfd); -FILE *bfd_cache_lookup_worker (bfd *abfd); - /* Extracted from reloc.c. */ #ifdef _BFD_MAKE_TABLE_bfd_reloc_code_real |