diff options
author | Andrew Cagney <cagney@redhat.com> | 2004-04-21 17:05:12 +0000 |
---|---|---|
committer | Andrew Cagney <cagney@redhat.com> | 2004-04-21 17:05:12 +0000 |
commit | 40838a725a2186ffdc9621694e72f340928a0b13 (patch) | |
tree | 188ce229fccc9465d5149968ddf2af50a1a6ebdc /bfd/bfd.c | |
parent | 7f919c8471b407c6a8c698ee3b29cdf0e9c4eb3d (diff) | |
download | gdb-40838a725a2186ffdc9621694e72f340928a0b13.zip gdb-40838a725a2186ffdc9621694e72f340928a0b13.tar.gz gdb-40838a725a2186ffdc9621694e72f340928a0b13.tar.bz2 |
2004-04-21 Andrew Cagney <cagney@redhat.com>
* opncls.c (_bfd_new_bfd_contained_in): Copy "iovec".
(struct opncls, opncls_btell, opncls_bseek, opncls_bread)
(opncls_bwrite, opncls_bclose, opncls_bflush)
(opncls_bstat, opncls_iovec, bfd_openr_iovec): Implement a
bfd iovec that uses function callbacks.
(bfd_close): Use the iovec's bclose.
* cache.c (cache_btell, cache_bseek, cache_bread, cache_bwrite)
(cache_bclose, cache_bflush, cache_bstat)
(cache_iovec): New functions and global variable, implement a
cache "iovec", where applicable set bfd_error.
(bfd_cache_init, bfd_cache_close): Set/test the bfd's iovec.
* bfdio.c (struct bfd_iovec): Define.
(real_read): Delete function.
(bfd_bread, bfd_bread, bfd_bwrite, bfd_tell, bfd_flush, bfd_stat)
(bfd_seek, bfd_get_mtime, bfd_get_size): Use the bfd's "iovec",
assume that bread and bwrite set bfd_error.
* bfd.c (struct bfd): Add "iovec", update comments.
* bfd-in2.h, libbfd.h: Re-generate.
Diffstat (limited to 'bfd/bfd.c')
-rw-r--r-- | bfd/bfd.c | 10 |
1 files changed, 3 insertions, 7 deletions
@@ -45,14 +45,10 @@ CODE_FRAGMENT . {* A pointer to the target jump table. *} . const struct bfd_target *xvec; . -. {* To avoid dragging too many header files into every file that -. includes `<<bfd.h>>', IOSTREAM has been declared as a "char *", -. and MTIME as a "long". Their correct types, to which they -. are cast when used, are "FILE *" and "time_t". The iostream -. is the result of an fopen on the filename. However, if the -. BFD_IN_MEMORY flag is set, then iostream is actually a pointer -. to a bfd_in_memory struct. *} +. {* The IOSTREAM, and corresponding IO vector that provide access +. to the file backing the BFD. *} . void *iostream; +. const struct bfd_iovec *iovec; . . {* Is the file descriptor being cached? That is, can it be closed as . needed, and re-opened when accessed later? *} |