* include/* changes for the bfd/ cleanup
[not found] ` <20010918192318.R27386@bubble.sa.bigpond.net.au>
@ 2001-09-18 2:58 ` Alan Modra
2001-09-18 3:03 ` bfd/doc " Alan Modra
` (3 subsequent siblings)
4 siblings, 0 replies; 22+ messages in thread
From: Alan Modra @ 2001-09-18 2:58 UTC (permalink / raw)
To: binutils
At least here I don't need to compress the diff. :-)
include/ChangeLog
* objalloc.h (OBJALLOC_ALIGN): Define using offsetof.
include/aout/ChangeLog
* aout64.h: Formatting fixes.
(N_TXTADDR): Evaluate to a bfd_vma.
(N_DATADDR): Avoid negative unsigned warning.
* hp300hpux.h: Formatting fixes.
(N_DATADDR): As above.
include/coff/ChangeLog
* external.h (GET_LINENO_LNNO): Use H_GET_32/16.
(PUT_LINENO_LNNO): Use H_PUT_32/16.
* m88k.h (GET_LNSZ_SIZE, GET_LNSZ_LNNO, GET_SCN_NRELOC,
GET_SCN_NLINNO): Use H_GET_32.
(PUT_LNSZ_LNNO, PUT_LNSZ_SIZE, PUT_SCN_NRELOC, PUT_SCN_NLINNO):
Use H_PUT_32.
* ti.h: Formatting fixes. Make use of H_GET_* and H_PUT_* throughout.
* xcoff.h: White space changes.
include/elf/ChangeLog
* internal.h (elf_internal_rela): Make r_addend a bfd_vma.
--
Alan Modra
Index: include/objalloc.h
===================================================================
RCS file: /cvs/src/src/include/objalloc.h,v
retrieving revision 1.1.1.1
diff -u -p -w -r1.1.1.1 objalloc.h
--- objalloc.h 1999/05/03 07:29:02 1.1.1.1
+++ objalloc.h 2001/09/17 09:28:54
@@ -56,12 +56,11 @@ struct objalloc_align { char x; double d
#ifndef offsetof
#include <stddef.h>
#endif
-#define OBJALLOC_ALIGN \
- ((ptrdiff_t) ((char *) &((struct objalloc_align *) 0)->d - (char *) 0))
-#else
-#define OBJALLOC_ALIGN \
- ((long) ((char *) &((struct objalloc_align *) 0)->d - (char *) 0))
#endif
+#ifndef offsetof
+#define offsetof(TYPE, MEMBER) ((unsigned long) &((TYPE *)0)->MEMBER)
+#endif
+#define OBJALLOC_ALIGN offsetof (struct objalloc_align, d)
/* Create an objalloc structure. Returns NULL if malloc fails. */
Index: include/aout/aout64.h
===================================================================
RCS file: /cvs/src/src/include/aout/aout64.h,v
retrieving revision 1.4
diff -u -p -w -r1.4 aout64.h
--- aout64.h 2001/03/14 02:27:43 1.4
+++ aout64.h 2001/09/17 09:28:54
@@ -131,7 +131,8 @@ struct external_exec
/* This macro is only relevant for ZMAGIC files; QMAGIC always has the header
in the text. */
#ifndef N_HEADER_IN_TEXT
-#define N_HEADER_IN_TEXT(x) (((x).a_entry & (TARGET_PAGE_SIZE-1)) >= EXEC_BYTES_SIZE)
+#define N_HEADER_IN_TEXT(x) \
+ (((x).a_entry & (TARGET_PAGE_SIZE-1)) >= EXEC_BYTES_SIZE)
#endif
/* Sun shared libraries, not linux. This macro is only relevant for ZMAGIC
@@ -153,13 +154,15 @@ struct external_exec
#define N_TXTADDR(x) \
(/* The address of a QMAGIC file is always one page in, */ \
/* with the header in the text. */ \
- N_IS_QMAGIC (x) ? TARGET_PAGE_SIZE + EXEC_BYTES_SIZE : \
- N_MAGIC(x) != ZMAGIC ? 0 : /* object file or NMAGIC */\
- N_SHARED_LIB(x) ? 0 : \
- N_HEADER_IN_TEXT(x) ? \
- TEXT_START_ADDR + EXEC_BYTES_SIZE : /* no padding */\
- TEXT_START_ADDR /* a page of padding */\
- )
+ N_IS_QMAGIC (x) \
+ ? (bfd_vma) TARGET_PAGE_SIZE + EXEC_BYTES_SIZE \
+ : (N_MAGIC (x) != ZMAGIC \
+ ? (bfd_vma) 0 /* object file or NMAGIC */ \
+ : (N_SHARED_LIB (x) \
+ ? (bfd_vma) 0 \
+ : (N_HEADER_IN_TEXT (x) \
+ ? (bfd_vma) TEXT_START_ADDR + EXEC_BYTES_SIZE \
+ : (bfd_vma) TEXT_START_ADDR))))
#endif
/* If N_HEADER_IN_TEXT is not true for ZMAGIC, there is some padding
@@ -179,12 +182,13 @@ struct external_exec
#ifndef N_TXTOFF
#define N_TXTOFF(x) \
(/* For {O,N,Q}MAGIC, no padding. */ \
- N_MAGIC(x) != ZMAGIC ? EXEC_BYTES_SIZE : \
- N_SHARED_LIB(x) ? 0 : \
- N_HEADER_IN_TEXT(x) ? \
- EXEC_BYTES_SIZE : /* no padding */\
- ZMAGIC_DISK_BLOCK_SIZE /* a page of padding */\
- )
+ N_MAGIC (x) != ZMAGIC \
+ ? EXEC_BYTES_SIZE \
+ : (N_SHARED_LIB (x) \
+ ? 0 \
+ : (N_HEADER_IN_TEXT (x) \
+ ? EXEC_BYTES_SIZE /* no padding */ \
+ : ZMAGIC_DISK_BLOCK_SIZE /* a page of padding */)))
#endif
/* Size of the text section. It's always as stated, except that we
offset it to `undo' the adjustment to N_TXTADDR and N_TXTOFF
@@ -194,20 +198,23 @@ struct external_exec
#ifndef N_TXTSIZE
#define N_TXTSIZE(x) \
(/* For QMAGIC, we don't consider the header part of the text section. */\
- N_IS_QMAGIC (x) ? (x).a_text - EXEC_BYTES_SIZE : \
- (N_MAGIC(x) != ZMAGIC || N_SHARED_LIB(x)) ? (x).a_text : \
- N_HEADER_IN_TEXT(x) ? \
- (x).a_text - EXEC_BYTES_SIZE: /* no padding */\
- (x).a_text /* a page of padding */\
- )
+ N_IS_QMAGIC (x) \
+ ? (x).a_text - EXEC_BYTES_SIZE \
+ : ((N_MAGIC (x) != ZMAGIC || N_SHARED_LIB (x)) \
+ ? (x).a_text \
+ : (N_HEADER_IN_TEXT (x) \
+ ? (x).a_text - EXEC_BYTES_SIZE /* no padding */ \
+ : (x).a_text /* a page of padding */ )))
#endif
/* The address of the data segment in virtual memory.
It is the text segment address, plus text segment size, rounded
up to a N_SEGSIZE boundary for pure or pageable files. */
#ifndef N_DATADDR
#define N_DATADDR(x) \
- (N_MAGIC(x)==OMAGIC? (N_TXTADDR(x)+N_TXTSIZE(x)) \
- : (N_SEGSIZE(x) + ((N_TXTADDR(x)+N_TXTSIZE(x)-1) & ~(N_SEGSIZE(x)-1))))
+ (N_MAGIC (x) == OMAGIC \
+ ? (N_TXTADDR (x) + N_TXTSIZE (x)) \
+ : (N_SEGSIZE (x) + ((N_TXTADDR (x) + N_TXTSIZE (x) - 1) \
+ & ~ (bfd_vma) (N_SEGSIZE (x) - 1))))
#endif
/* The address of the BSS segment -- immediately after the data segment. */
@@ -228,10 +235,8 @@ struct external_exec
for NMAGIC. */
#ifndef N_DATOFF
-#define N_DATOFF(x) \
- (N_TXTOFF(x) + N_TXTSIZE(x))
+#define N_DATOFF(x) ( N_TXTOFF (x) + N_TXTSIZE (x) )
#endif
-
#ifndef N_TRELOFF
#define N_TRELOFF(x) ( N_DATOFF(x) + (x).a_data )
#endif
Index: include/aout/hp300hpux.h
===================================================================
RCS file: /cvs/src/src/include/aout/hp300hpux.h,v
retrieving revision 1.3
diff -u -p -w -r1.3 hp300hpux.h
--- hp300hpux.h 2001/03/18 02:56:20 1.3
+++ hp300hpux.h 2001/09/17 09:28:54
@@ -73,13 +73,13 @@ struct hp300hpux_header_extension
#define N_BADMAG(x) ((_N_BADMAG (x)) || (_N_BADMACH (x)))
#define N_DATADDR(x) \
- ((N_MAGIC(x)==OMAGIC || N_MAGIC(x)==HPUX_DOT_O_MAGIC) ? \
- (N_TXTADDR(x)+N_TXTSIZE(x)) \
- : (N_SEGSIZE(x) + ((N_TXTADDR(x)+N_TXTSIZE(x)-1) & ~(N_SEGSIZE(x)-1))))
+ ((N_MAGIC (x) == OMAGIC || N_MAGIC (x) == HPUX_DOT_O_MAGIC) \
+ ? (N_TXTADDR (x) + N_TXTSIZE (x)) \
+ : (N_SEGSIZE (x) + ((N_TXTADDR (x) + N_TXTSIZE (x) - 1) \
+ & ~ (bfd_vma) (N_SEGSIZE (x) - 1))))
#define _N_BADMACH(x) \
-(((N_MACHTYPE (x)) != HP9000S200_ID) && \
- ((N_MACHTYPE (x)) != HP98x6_ID))
+ (((N_MACHTYPE (x)) != HP9000S200_ID) && ((N_MACHTYPE (x)) != HP98x6_ID))
#define _N_BADMAG(x) (N_MAGIC(x) != HPUX_DOT_O_MAGIC \
&& N_MAGIC(x) != OMAGIC \
Index: include/coff/external.h
===================================================================
RCS file: /cvs/src/src/include/coff/external.h,v
retrieving revision 1.2
diff -u -p -w -r1.2 external.h
--- external.h 2001/03/24 00:45:11 1.2
+++ external.h 2001/09/17 09:28:54
@@ -113,12 +113,12 @@ struct external_lineno
#define LINESZ (4 + L_LNNO_SIZE)
#if L_LNNO_SIZE == 4
-#define GET_LINENO_LNNO(abfd, ext) bfd_h_get_32 (abfd, (bfd_byte *) (ext->l_lnno));
-#define PUT_LINENO_LNNO(abfd, val, ext) bfd_h_put_32 (abfd, val, (bfd_byte *) (ext->l_lnno));
+#define GET_LINENO_LNNO H_GET_32
+#define PUT_LINENO_LNNO H_PUT_32
#endif
#if L_LNNO_SIZE == 2
-#define GET_LINENO_LNNO(abfd, ext) bfd_h_get_16 (abfd, (bfd_byte *) (ext->l_lnno));
-#define PUT_LINENO_LNNO(abfd,val, ext) bfd_h_put_16 (abfd,val, (bfd_byte *) (ext->l_lnno));
+#define GET_LINENO_LNNO H_GET_16
+#define PUT_LINENO_LNNO H_PUT_16
#endif
#endif /* not DO_NOT_DEFINE_LINENO */
Index: include/coff/m88k.h
===================================================================
RCS file: /cvs/src/src/include/coff/m88k.h,v
retrieving revision 1.3
diff -u -p -w -r1.3 m88k.h
--- m88k.h 2001/03/24 00:45:11 1.3
+++ m88k.h 2001/09/17 09:28:54
@@ -158,20 +158,22 @@ union external_auxent
} x_tv; /* info about .tv section (in auxent of symbol .tv)) */
};
-#define GET_FCN_LNNOPTR(abfd, ext) bfd_h_get_32(abfd, (bfd_byte *)ext->x_sym.x_fcnary.x_fcn.x_lnnoptr)
-#define GET_FCN_ENDNDX(abfd, ext) bfd_h_get_32(abfd, (bfd_byte *) ext->x_sym.x_fcnary.x_fcn.x_endndx)
-#define PUT_FCN_LNNOPTR(abfd, in, ext) bfd_h_put_32(abfd, in, (bfd_byte *) ext->x_sym.x_fcnary.x_fcn.x_lnnoptr)
-#define PUT_FCN_ENDNDX(abfd, in, ext) bfd_h_put_32(abfd, in, (bfd_byte *) ext->x_sym.x_fcnary.x_fcn.x_endndx)
-#define GET_LNSZ_SIZE(abfd, ext) bfd_h_get_32(abfd, (bfd_byte *) ext->x_sym.x_misc.x_lnsz.x_size)
-#define GET_LNSZ_LNNO(abfd, ext) bfd_h_get_32(abfd, (bfd_byte *) ext->x_sym.x_misc.x_lnsz.x_lnno)
-#define PUT_LNSZ_LNNO(abfd, in, ext) bfd_h_put_32(abfd, in, (bfd_byte *) ext->x_sym.x_misc.x_lnsz.x_lnno)
-#define PUT_LNSZ_SIZE(abfd, in, ext) bfd_h_put_32(abfd, in, (bfd_byte *) ext->x_sym.x_misc.x_lnsz.x_size)
-#define GET_SCN_SCNLEN(abfd, ext) bfd_h_get_32(abfd, (bfd_byte *) ext->x_scn.x_scnlen)
-#define GET_SCN_NRELOC(abfd, ext) bfd_h_get_32(abfd, (bfd_byte *) ext->x_scn.x_nreloc)
-#define GET_SCN_NLINNO(abfd, ext) bfd_h_get_32(abfd, (bfd_byte *) ext->x_scn.x_nlinno)
-#define PUT_SCN_SCNLEN(abfd,in, ext) bfd_h_put_32(abfd, in, (bfd_byte *) ext->x_scn.x_scnlen)
-#define PUT_SCN_NRELOC(abfd,in, ext) bfd_h_put_32(abfd, in, (bfd_byte *)ext->x_scn.x_nreloc)
-#define PUT_SCN_NLINNO(abfd,in, ext) bfd_h_put_32(abfd,in, (bfd_byte *) ext->x_scn.x_nlinno)
+#define GET_LNSZ_SIZE(abfd, ext) \
+ H_GET_32 (abfd, ext->x_sym.x_misc.x_lnsz.x_size)
+#define GET_LNSZ_LNNO(abfd, ext) \
+ H_GET_32 (abfd, ext->x_sym.x_misc.x_lnsz.x_lnno)
+#define PUT_LNSZ_LNNO(abfd, in, ext) \
+ H_PUT_32 (abfd, in, ext->x_sym.x_misc.x_lnsz.x_lnno)
+#define PUT_LNSZ_SIZE(abfd, in, ext) \
+ H_PUT_32 (abfd, in, ext->x_sym.x_misc.x_lnsz.x_size)
+#define GET_SCN_NRELOC(abfd, ext) \
+ H_GET_32 (abfd, ext->x_scn.x_nreloc)
+#define GET_SCN_NLINNO(abfd, ext) \
+ H_GET_32 (abfd, ext->x_scn.x_nlinno)
+#define PUT_SCN_NRELOC(abfd, in, ext) \
+ H_PUT_32 (abfd, in, ext->x_scn.x_nreloc)
+#define PUT_SCN_NLINNO(abfd, in, ext) \
+ H_PUT_32 (abfd,in, ext->x_scn.x_nlinno)
#define SYMENT struct external_syment
#define SYMESZ 20
Index: include/coff/ti.h
===================================================================
RCS file: /cvs/src/src/include/coff/ti.h,v
retrieving revision 1.9
diff -u -p -w -r1.9 ti.h
--- ti.h 2001/03/14 02:27:43 1.9
+++ ti.h 2001/09/17 09:28:55
@@ -92,16 +92,22 @@ struct external_filehdr
/* we need to read/write an extra field in the coff file header */
#ifndef COFF_ADJUST_FILEHDR_IN_POST
#define COFF_ADJUST_FILEHDR_IN_POST(abfd,src,dst) \
-do { ((struct internal_filehdr *)(dst))->f_target_id = \
-bfd_h_get_16(abfd, (bfd_byte *)(((FILHDR *)(src))->f_target_id)); \
-} while(0)
+ do \
+ { \
+ ((struct internal_filehdr *)(dst))->f_target_id = \
+ H_GET_16 (abfd, ((FILHDR *)(src))->f_target_id); \
+ } \
+ while (0)
#endif
#ifndef COFF_ADJUST_FILEHDR_OUT_POST
#define COFF_ADJUST_FILEHDR_OUT_POST(abfd,src,dst) \
-do { bfd_h_put_16(abfd, ((struct internal_filehdr *)(src))->f_target_id, \
- (bfd_byte *)(((FILHDR *)(dst))->f_target_id)); \
-} while(0)
+ do \
+ { \
+ H_PUT_16 (abfd, ((struct internal_filehdr *)(src))->f_target_id, \
+ ((FILHDR *)(dst))->f_target_id); \
+ } \
+ while (0)
#endif
#define FILHDR struct external_filehdr
@@ -201,35 +207,39 @@ struct external_scnhdr {
accordingly
*/
#define GET_SCNHDR_NRELOC(ABFD,PTR) \
-(COFF2_P(ABFD) ? bfd_h_get_32 (ABFD,PTR) : bfd_h_get_16 (ABFD, PTR))
+ (COFF2_P (ABFD) ? H_GET_32 (ABFD, PTR) : H_GET_16 (ABFD, PTR))
#define PUT_SCNHDR_NRELOC(ABFD,VAL,PTR) \
-(COFF2_P(ABFD) ? bfd_h_put_32 (ABFD,VAL,PTR) : bfd_h_put_16 (ABFD,VAL,PTR))
+ (COFF2_P (ABFD) ? H_PUT_32 (ABFD, VAL, PTR) : H_PUT_16 (ABFD, VAL, PTR))
#define GET_SCNHDR_NLNNO(ABFD,PTR) \
-(COFF2_P(ABFD) ? bfd_h_get_32 (ABFD,PTR) : bfd_h_get_16 (ABFD, (PTR)-2))
+ (COFF2_P (ABFD) ? H_GET_32 (ABFD, PTR) : H_GET_16 (ABFD, (PTR) -2))
#define PUT_SCNHDR_NLNNO(ABFD,VAL,PTR) \
-(COFF2_P(ABFD) ? bfd_h_put_32 (ABFD,VAL,PTR) : bfd_h_put_16 (ABFD,VAL,(PTR)-2))
+ (COFF2_P (ABFD) ? H_PUT_32 (ABFD, VAL, PTR) : H_PUT_16 (ABFD, VAL, (PTR) -2))
#define GET_SCNHDR_FLAGS(ABFD,PTR) \
-(COFF2_P(ABFD) ? bfd_h_get_32 (ABFD,PTR) : bfd_h_get_16 (ABFD, (PTR)-4))
+ (COFF2_P (ABFD) ? H_GET_32 (ABFD, PTR) : H_GET_16 (ABFD, (PTR) -4))
#define PUT_SCNHDR_FLAGS(ABFD,VAL,PTR) \
-(COFF2_P(ABFD) ? bfd_h_put_32 (ABFD,VAL,PTR) : bfd_h_put_16 (ABFD,VAL,(PTR)-4))
+ (COFF2_P (ABFD) ? H_PUT_32 (ABFD, VAL, PTR) : H_PUT_16 (ABFD, VAL, (PTR) -4))
#define GET_SCNHDR_PAGE(ABFD,PTR) \
-(COFF2_P(ABFD) ? bfd_h_get_16 (ABFD,PTR) : bfd_h_get_8 (ABFD, (PTR)-7))
+ (COFF2_P (ABFD) ? H_GET_16 (ABFD, PTR) : H_GET_8 (ABFD, (PTR) -7))
/* on output, make sure that the "reserved" field is zero */
#define PUT_SCNHDR_PAGE(ABFD,VAL,PTR) \
-(COFF2_P(ABFD) ? bfd_h_put_16 (ABFD,VAL,PTR) : \
-bfd_h_put_8 (ABFD,VAL,(PTR)-7), bfd_h_put_8 (ABFD, 0, (PTR)-8))
+ (COFF2_P (ABFD) \
+ ? H_PUT_16 (ABFD, VAL, PTR) \
+ : H_PUT_8 (ABFD, VAL, (PTR) -7), H_PUT_8 (ABFD, 0, (PTR) -8))
/* TI COFF stores section size as number of bytes (address units, not octets),
so adjust to be number of octets, which is what BFD expects */
#define GET_SCNHDR_SIZE(ABFD,SZP) \
-(bfd_h_get_32(ABFD,SZP)*bfd_octets_per_byte(ABFD))
+ (H_GET_32 (ABFD, SZP) * bfd_octets_per_byte (ABFD))
#define PUT_SCNHDR_SIZE(ABFD,SZ,SZP) \
-bfd_h_put_32(ABFD,(SZ)/bfd_octets_per_byte(ABFD),SZP)
+ H_PUT_32 (ABFD, (SZ) / bfd_octets_per_byte (ABFD), SZP)
#define COFF_ADJUST_SCNHDR_IN_POST(ABFD,EXT,INT) \
-do { ((struct internal_scnhdr *)(INT))->s_page = \
-GET_SCNHDR_PAGE(ABFD,(bfd_byte *)((SCNHDR *)(EXT))->s_page); \
-} while(0)
+ do \
+ { \
+ ((struct internal_scnhdr *)(INT))->s_page = \
+ GET_SCNHDR_PAGE (ABFD, ((SCNHDR *)(EXT))->s_page); \
+ } \
+ while (0)
/* The line number and reloc overflow checking in coff_swap_scnhdr_out in
coffswap.h doesn't use PUT_X for s_nlnno and s_nreloc.
@@ -237,16 +247,18 @@ GET_SCNHDR_PAGE(ABFD,(bfd_byte *)((SCNHD
fields.
*/
#define COFF_ADJUST_SCNHDR_OUT_POST(ABFD,INT,EXT) \
-do { \
+ do \
+ { \
PUT_SCNHDR_NLNNO(ABFD,((struct internal_scnhdr *)(INT))->s_nlnno,\
- (bfd_byte *)((SCNHDR *)(EXT))->s_nlnno); \
+ ((SCNHDR *)(EXT))->s_nlnno); \
PUT_SCNHDR_NRELOC(ABFD,((struct internal_scnhdr *)(INT))->s_nreloc,\
- (bfd_byte *)((SCNHDR *)(EXT))->s_nreloc); \
+ ((SCNHDR *)(EXT))->s_nreloc); \
PUT_SCNHDR_FLAGS(ABFD,((struct internal_scnhdr *)(INT))->s_flags, \
- (bfd_byte *)((SCNHDR *)(EXT))->s_flags); \
+ ((SCNHDR *)(EXT))->s_flags); \
PUT_SCNHDR_PAGE(ABFD,((struct internal_scnhdr *)(INT))->s_page, \
- (bfd_byte *)((SCNHDR *)(EXT))->s_page); \
-} while(0)
+ ((SCNHDR *)(EXT))->s_page); \
+ } \
+ while (0)
/* Page macros
@@ -387,32 +399,37 @@ union external_auxent {
/* section lengths are in target bytes (not host bytes) */
#define GET_SCN_SCNLEN(ABFD,EXT) \
-(bfd_h_get_32(ABFD,(bfd_byte *)(EXT)->x_scn.x_scnlen)*bfd_octets_per_byte(ABFD))
+ (H_GET_32 (ABFD, (EXT)->x_scn.x_scnlen) * bfd_octets_per_byte (ABFD))
#define PUT_SCN_SCNLEN(ABFD,INT,EXT) \
-bfd_h_put_32(ABFD,(INT)/bfd_octets_per_byte(ABFD),\
- (bfd_byte *)(EXT)->x_scn.x_scnlen)
+ H_PUT_32 (ABFD, (INT) / bfd_octets_per_byte (ABFD), (EXT)->x_scn.x_scnlen)
/* lnsz size is in bits in COFF file, in bytes in BFD */
#define GET_LNSZ_SIZE(abfd, ext) \
-(bfd_h_get_16(abfd, (bfd_byte *)ext->x_sym.x_misc.x_lnsz.x_size) / \
- (class != C_FIELD ? 8 : 1))
+ (H_GET_16 (abfd, ext->x_sym.x_misc.x_lnsz.x_size) / (class != C_FIELD ? 8 : 1))
#define PUT_LNSZ_SIZE(abfd, in, ext) \
- bfd_h_put_16(abfd, ((class != C_FIELD) ? (in)*8 : (in)), \
- (bfd_byte*) ext->x_sym.x_misc.x_lnsz.x_size)
+ H_PUT_16 (abfd, ((class != C_FIELD) ? (in) * 8 : (in)), \
+ ext->x_sym.x_misc.x_lnsz.x_size)
/* TI COFF stores offsets for MOS and MOU in bits; BFD expects bytes */
#define COFF_ADJUST_SYM_IN_POST(ABFD,EXT,INT) \
-do { struct internal_syment *dst = (struct internal_syment *)(INT); \
-if (dst->n_sclass == C_MOS || dst->n_sclass == C_MOU) dst->n_value /= 8; \
-} while (0)
+ do \
+ { \
+ struct internal_syment *dst = (struct internal_syment *)(INT); \
+ if (dst->n_sclass == C_MOS || dst->n_sclass == C_MOU) \
+ dst->n_value /= 8; \
+ } \
+ while (0)
#define COFF_ADJUST_SYM_OUT_POST(ABFD,INT,EXT) \
-do { struct internal_syment *src = (struct internal_syment *)(INT); \
+ do \
+ { \
+ struct internal_syment *src = (struct internal_syment *)(INT); \
SYMENT *dst = (SYMENT *)(EXT); \
if(src->n_sclass == C_MOU || src->n_sclass == C_MOS) \
-bfd_h_put_32(abfd,src->n_value * 8,(bfd_byte *)dst->e_value); \
-} while (0)
+ H_PUT_32 (abfd, src->n_value * 8, dst->e_value); \
+ } \
+ while (0)
/* Detect section-relative absolute symbols so they get flagged with a sym
index of -1.
Index: include/coff/xcoff.h
===================================================================
RCS file: /cvs/src/src/include/coff/xcoff.h,v
retrieving revision 1.3
diff -u -p -w -r1.3 xcoff.h
white space changes
Index: include/elf/internal.h
===================================================================
RCS file: /cvs/src/src/include/elf/internal.h,v
retrieving revision 1.3
diff -u -p -w -r1.3 internal.h
--- internal.h 2001/03/14 02:27:44 1.3
+++ internal.h 2001/09/17 09:28:56
@@ -153,7 +153,7 @@ typedef struct elf_internal_rel {
typedef struct elf_internal_rela {
bfd_vma r_offset; /* Location at which to apply the action */
bfd_vma r_info; /* Index and Type of relocation */
- bfd_signed_vma r_addend; /* Constant addend used to compute value */
+ bfd_vma r_addend; /* Constant addend used to compute value */
} Elf_Internal_Rela;
#define elf32_internal_rela elf_internal_rela
^ permalink raw reply [flat|nested] 22+ messages in thread
* bfd/doc changes for the bfd/ cleanup
[not found] ` <20010918192318.R27386@bubble.sa.bigpond.net.au>
2001-09-18 2:58 ` include/* changes for the bfd/ cleanup Alan Modra
@ 2001-09-18 3:03 ` Alan Modra
2001-09-18 3:05 ` binutils " Alan Modra
` (2 subsequent siblings)
4 siblings, 0 replies; 22+ messages in thread
From: Alan Modra @ 2001-09-18 3:03 UTC (permalink / raw)
To: binutils
bfd/doc/ChangeLog
* bfdint.texi: Replace reference to bfd_read with bfd_bread.
Likewise for bfd_write.
Index: bfd/doc/bfdint.texi
===================================================================
RCS file: /cvs/src/src/bfd/doc/bfdint.texi,v
retrieving revision 1.9
diff -u -p -w -r1.9 bfdint.texi
--- bfdint.texi 2001/06/20 22:23:23 1.9
+++ bfdint.texi 2001/09/17 09:28:03
@@ -503,7 +503,7 @@ corresponds to an actual section in an a
Get the contents of a section. This is called from
@samp{bfd_get_section_contents}. Most targets set this to
@samp{_bfd_generic_get_section_contents}, which does a @samp{bfd_seek}
-based on the section's @samp{filepos} field and a @samp{bfd_read}. The
+based on the section's @samp{filepos} field and a @samp{bfd_bread}. The
corresponding field in the target vector is named
@samp{_bfd_get_section_contents}.
@@ -636,7 +636,7 @@ always uses extended name tables anyhow.
target vector is named @samp{_bfd_truncate_arname}.
@item _write_armap
-Write out the archive symbol table using calls to @samp{bfd_write}.
+Write out the archive symbol table using calls to @samp{bfd_bwrite}.
This is normally called from the archive @samp{write_contents} routine.
The corresponding field in the target vector is named @samp{write_armap}
(no leading underscore).
^ permalink raw reply [flat|nested] 22+ messages in thread
* binutils changes for the bfd/ cleanup
[not found] ` <20010918192318.R27386@bubble.sa.bigpond.net.au>
2001-09-18 2:58 ` include/* changes for the bfd/ cleanup Alan Modra
2001-09-18 3:03 ` bfd/doc " Alan Modra
@ 2001-09-18 3:05 ` Alan Modra
2001-09-18 3:06 ` gas " Alan Modra
2001-09-18 3:09 ` ld " Alan Modra
4 siblings, 0 replies; 22+ messages in thread
From: Alan Modra @ 2001-09-18 3:05 UTC (permalink / raw)
To: binutils
binutils/ChangeLog
* ar.c (print_contents): Cast args of bfd_seek to the right types.
Replace bfd_read call with call to bfd_bread.
(extract_file): Likewise.
* objdump.c (dump_section_header): Cast section->filepos to
unsigned long to suit printf format string.
* readelf.c (process_section_headers): Similarly for sh_offset.
(process_unwind): Likewise.
Index: binutils/ar.c
===================================================================
RCS file: /cvs/src/src/binutils/ar.c,v
retrieving revision 1.19
diff -u -p -w -r1.19 ar.c
--- ar.c 2001/03/13 06:43:56 1.19
+++ ar.c 2001/09/17 09:28:04
@@ -827,7 +827,7 @@ print_contents (abfd)
/* xgettext:c-format */
printf (_("\n<member %s>\n\n"), bfd_get_filename (abfd));
- bfd_seek (abfd, 0, SEEK_SET);
+ bfd_seek (abfd, (file_ptr) 0, SEEK_SET);
size = buf.st_size;
while (ncopied < size)
@@ -838,8 +838,7 @@ print_contents (abfd)
if (tocopy > BUFSIZE)
tocopy = BUFSIZE;
- nread = bfd_read (cbuf, 1, tocopy, abfd); /* oops -- broke
- abstraction! */
+ nread = bfd_bread (cbuf, (bfd_size_type) tocopy, abfd);
if (nread != tocopy)
/* xgettext:c-format */
fatal (_("%s is not a valid archive"),
@@ -883,7 +882,7 @@ extract_file (abfd)
if (verbose)
printf ("x - %s\n", bfd_get_filename (abfd));
- bfd_seek (abfd, 0, SEEK_SET);
+ bfd_seek (abfd, (file_ptr) 0, SEEK_SET);
ostream = NULL;
if (size == 0)
@@ -907,7 +906,7 @@ extract_file (abfd)
if (tocopy > BUFSIZE)
tocopy = BUFSIZE;
- nread = bfd_read (cbuf, 1, tocopy, abfd);
+ nread = bfd_bread (cbuf, (bfd_size_type) tocopy, abfd);
if (nread != tocopy)
/* xgettext:c-format */
fatal (_("%s is not a valid archive"),
Index: binutils/objdump.c
===================================================================
RCS file: /cvs/src/src/binutils/objdump.c,v
retrieving revision 1.40
diff -u -p -w -r1.40 objdump.c
--- objdump.c 2001/08/10 16:43:18 1.40
+++ objdump.c 2001/09/17 09:28:06
@@ -287,7 +287,7 @@ dump_section_header (abfd, section, igno
bfd_printf_vma (abfd, bfd_get_section_vma (abfd, section));
printf (" ");
bfd_printf_vma (abfd, section->lma);
- printf (" %08lx 2**%u", section->filepos,
+ printf (" %08lx 2**%u", (unsigned long) section->filepos,
bfd_get_section_alignment (abfd, section));
if (! wide_output)
printf ("\n ");
Index: binutils/readelf.c
===================================================================
RCS file: /cvs/src/src/binutils/readelf.c,v
retrieving revision 1.119
diff -u -p -w -r1.119 readelf.c
--- readelf.c 2001/09/12 23:53:45 1.119
+++ readelf.c 2001/09/17 09:28:12
@@ -3085,7 +3085,7 @@ process_section_headers (file)
{
putchar (' ');
print_vma (section->sh_addr, LONG_HEX);
- printf (" %8.8lx", section->sh_offset);
+ printf (" %8.8lx", (unsigned long) section->sh_offset);
printf ("\n ");
print_vma (section->sh_size, LONG_HEX);
printf (" ");
@@ -3650,7 +3650,7 @@ process_unwind (file)
printf ("'%s'", SECTION_NAME (unwsec));
printf (_(" at offset 0x%lx contains %lu entries:\n"),
- unwsec->sh_offset,
+ (unsigned long) unwsec->sh_offset,
(unsigned long) (unwsec->sh_size / (3 * addr_size)));
(void) slurp_ia64_unwind_table (file, & aux, unwsec);
^ permalink raw reply [flat|nested] 22+ messages in thread
* gas changes for the bfd/ cleanup
[not found] ` <20010918192318.R27386@bubble.sa.bigpond.net.au>
` (2 preceding siblings ...)
2001-09-18 3:05 ` binutils " Alan Modra
@ 2001-09-18 3:06 ` Alan Modra
2001-09-18 3:09 ` ld " Alan Modra
4 siblings, 0 replies; 22+ messages in thread
From: Alan Modra @ 2001-09-18 3:06 UTC (permalink / raw)
To: binutils
gas/ChangeLog
* dwarf2dbg.c (dwarf2_directive_file): Avoid signed/unsigned warning.
* write.c (set_symtab): Update bfd_alloc declaration. Use a temp
var to ensure bfd_alloc arg is the right type.
(write_object_file): Cast args of bfd_seek. Replace bfd_write with
bfd_bwrite.
* config/obj-coff.c: Replace calls to bfd_write with calls to
bfd_bwrite. Cast args of bfd_seek.
* config/obj-elf.c (obj_elf_change_section): Avoid signed/unsigned
warning.
* config/tc-mn10300.c (set_arch_mach): Make param unsigned.
* config/tc-tic54x.c (tic54x_mlib): Replace bfd_read call with
call to bfd_bread.
Index: gas/write.c
===================================================================
RCS file: /cvs/src/src/gas/write.c,v
retrieving revision 1.45
diff -u -p -w -r1.45 write.c
--- write.c 2001/09/09 14:01:16 1.45
+++ write.c 2001/09/17 09:28:15
@@ -1365,7 +1365,7 @@ set_symtab ()
asymbol **asympp;
symbolS *symp;
boolean result;
- extern PTR bfd_alloc PARAMS ((bfd *, size_t));
+ extern PTR bfd_alloc PARAMS ((bfd *, bfd_size_type));
/* Count symbols. We can't rely on a count made by the loop in
write_object_file, because *_frob_file may add a new symbol or
@@ -1377,9 +1377,9 @@ set_symtab ()
if (nsyms)
{
int i;
+ bfd_size_type amt = (bfd_size_type) nsyms * sizeof (asymbol *);
- asympp = (asymbol **) bfd_alloc (stdoutput,
- nsyms * sizeof (asymbol *));
+ asympp = (asymbol **) bfd_alloc (stdoutput, amt);
symp = symbol_rootP;
for (i = 0; i < nsyms; i++, symp = symbol_next (symp))
{
@@ -1880,8 +1880,8 @@ write_object_file ()
obj_emit_strings (&next_object_file_charP);
#ifdef BFD_HEADERS
- bfd_seek (stdoutput, 0, 0);
- bfd_write (the_object_file, 1, object_file_size, stdoutput);
+ bfd_seek (stdoutput, (file_ptr) 0, 0);
+ bfd_bwrite (the_object_file, (bfd_size_type) object_file_size, stdoutput);
#else
/* Write the data to the file. */
Index: gas/config/obj-coff.c
===================================================================
RCS file: /cvs/src/src/gas/config/obj-coff.c,v
retrieving revision 1.51
diff -u -p -w -r1.51 obj-coff.c
--- obj-coff.c 2001/08/09 14:42:07 1.51
+++ obj-coff.c 2001/09/17 09:28:20
@@ -2059,8 +2059,8 @@ do_relocs_for (abfd, h, file_cursor)
#endif
/* Write out the reloc table */
- bfd_write ((PTR) external_reloc_vec, 1, external_reloc_size,
- abfd);
+ bfd_bwrite ((PTR) external_reloc_vec,
+ (bfd_size_type) external_reloc_size, abfd);
free (external_reloc_vec);
/* Fill in section header info. */
@@ -2202,7 +2202,7 @@ fill_section (abfd, h, file_cursor)
{
if (s->s_scnptr != 0)
{
- bfd_write (buffer, s->s_size, 1, abfd);
+ bfd_bwrite (buffer, s->s_size, abfd);
*file_cursor += s->s_size;
}
free (buffer);
@@ -2226,7 +2226,7 @@ coff_header_append (abfd, h)
unsigned long string_size = 4;
#endif
- bfd_seek (abfd, 0, 0);
+ bfd_seek (abfd, (file_ptr) 0, 0);
#ifndef OBJ_COFF_OMIT_OPTIONAL_HEADER
H_SET_MAGIC_NUMBER (h, COFF_MAGIC);
@@ -2242,8 +2242,8 @@ coff_header_append (abfd, h)
i = bfd_coff_swap_filehdr_out (abfd, &h->filehdr, buffer);
- bfd_write (buffer, i, 1, abfd);
- bfd_write (buffero, H_GET_SIZEOF_OPTIONAL_HEADER (h), 1, abfd);
+ bfd_bwrite (buffer, (bfd_size_type) i, abfd);
+ bfd_bwrite (buffero, (bfd_size_type) H_GET_SIZEOF_OPTIONAL_HEADER (h), abfd);
for (i = SEG_E0; i < SEG_LAST; i++)
{
@@ -2268,7 +2268,7 @@ coff_header_append (abfd, h)
buffer);
if (size == 0)
as_bad (_("bfd_coff_swap_scnhdr_out failed"));
- bfd_write (buffer, size, 1, abfd);
+ bfd_bwrite (buffer, (bfd_size_type) size, abfd);
}
}
}
@@ -3395,7 +3395,7 @@ do_linenos_for (abfd, h, file_cursor)
s->scnhdr.s_lnnoptr = *file_cursor;
- bfd_write (buffer, 1, s->scnhdr.s_nlnno * LINESZ, abfd);
+ bfd_bwrite (buffer, (bfd_size_type) s->scnhdr.s_nlnno * LINESZ, abfd);
free (buffer);
*file_cursor += s->scnhdr.s_nlnno * LINESZ;
@@ -3618,7 +3618,8 @@ write_object_file ()
w_symbols (abfd, buffer1, symbol_rootP);
if (string_byte_count > 0)
w_strings (buffer1 + symtable_size);
- bfd_write (buffer1, 1, symtable_size + string_byte_count, abfd);
+ bfd_bwrite (buffer1, (bfd_size_type) symtable_size + string_byte_count,
+ abfd);
free (buffer1);
}
Index: gas/config/obj-elf.c
===================================================================
RCS file: /cvs/src/src/gas/config/obj-elf.c,v
retrieving revision 1.37
diff -u -p -w -r1.37 obj-elf.c
--- obj-elf.c 2001/09/11 16:46:38 1.37
+++ obj-elf.c 2001/09/17 09:28:22
@@ -721,7 +721,7 @@ obj_elf_change_section (name, type, attr
& (SEC_ALLOC | SEC_LOAD | SEC_READONLY | SEC_CODE
| SEC_EXCLUDE | SEC_SORT_ENTRIES | SEC_MERGE | SEC_STRINGS))
as_warn (_("Ignoring changed section attributes for %s"), name);
- else if ((flags & SEC_MERGE) && old_sec->entsize != entsize)
+ else if ((flags & SEC_MERGE) && old_sec->entsize != (unsigned) entsize)
as_warn (_("Ignoring changed section entity size for %s"), name);
}
Index: gas/config/tc-arc.c
===================================================================
RCS file: /cvs/src/src/gas/config/tc-arc.c,v
retrieving revision 1.15
diff -u -p -w -r1.15 tc-arc.c
--- tc-arc.c 2001/07/23 14:02:12 1.15
+++ tc-arc.c 2001/09/17 09:28:24
@@ -1631,9 +1631,7 @@ void
arc_code_symbol (expressionP)
expressionS *expressionP;
{
- if (expressionP->X_op == O_symbol && expressionP->X_add_number == 0
- /* I think this test is unnecessary but just as a sanity check... */
- && expressionP->X_op_symbol == NULL)
+ if (expressionP->X_op == O_symbol && expressionP->X_add_number == 0)
{
expressionS two;
expressionP->X_op = O_right_shift;
Index: gas/config/tc-mn10300.c
===================================================================
RCS file: /cvs/src/src/gas/config/tc-mn10300.c,v
retrieving revision 1.27
diff -u -p -w -r1.27 tc-mn10300.c
--- tc-mn10300.c 2001/07/30 06:15:49 1.27
+++ tc-mn10300.c 2001/09/17 09:28:30
@@ -92,7 +92,7 @@ static int reg_name_search PARAMS ((cons
static boolean data_register_name PARAMS ((expressionS *expressionP));
static boolean address_register_name PARAMS ((expressionS *expressionP));
static boolean other_register_name PARAMS ((expressionS *expressionP));
-static void set_arch_mach PARAMS ((int));
+static void set_arch_mach PARAMS ((unsigned int));
/* Set linkrelax here to avoid fixups in most sections. */
int linkrelax = 1;
@@ -2130,7 +2130,7 @@ check_operand (insn, operand, val)
static void
set_arch_mach (mach)
- int mach;
+ unsigned int mach;
{
if (!bfd_set_arch_mach (stdoutput, bfd_arch_mn10300, mach))
as_warn (_("could not set architecture and machine"));
Index: gas/config/tc-tic54x.c
===================================================================
RCS file: /cvs/src/src/gas/config/tc-tic54x.c,v
retrieving revision 1.6
diff -u -p -w -r1.6 tc-tic54x.c
--- tc-tic54x.c 2001/03/08 23:24:25 1.6
+++ tc-tic54x.c 2001/09/17 09:28:36
@@ -2388,7 +2388,7 @@ tic54x_mlib (ignore)
FILE *ftmp;
/* We're not sure how big it is, but it will be smaller than "size". */
- bfd_read (buf, size, 1, mbfd);
+ bfd_bread (buf, size, mbfd);
/* Write to a temporary file, then use s_include to include it
a bit of a hack. */
^ permalink raw reply [flat|nested] 22+ messages in thread
* ld changes for the bfd/ cleanup
[not found] ` <20010918192318.R27386@bubble.sa.bigpond.net.au>
` (3 preceding siblings ...)
2001-09-18 3:06 ` gas " Alan Modra
@ 2001-09-18 3:09 ` Alan Modra
4 siblings, 0 replies; 22+ messages in thread
From: Alan Modra @ 2001-09-18 3:09 UTC (permalink / raw)
To: binutils
ld/ChangeLog
* deffilep.y (def_stash_module): Constify "name" param.
* pe-dll.c: Replace CONST with const throughout.
(quick_symbol): Constify "n1", "n2", "n3" params.
(make_singleton_name_thunk): Constify "import" param. Make
"buffer_len" a size_t.
(make_import_fixup_entry): Constify "name", "fixup_name",
"dll_symname" params.
(pe_get16): Cast args of bfd_seek. Replace bfd_read with bfd_bread.
(pe_get32): Likewise.
(pe_implied_import_dll): Likewise.
* emultempl/beos.em (sort_by_file_name): Constify "ra", "rb".
(sort_by_section_name): Likewise.
* emultempl/pe.em: Move defines for arm_epoc_pe before bfd.h included.
(make_import_fixup): Cast printf arg, rel->address to long rather
than int.
(gld_${EMULATION_NAME}_after_open): Don't compare NULL against int.
Index: ld/deffilep.y
===================================================================
RCS file: /cvs/src/src/ld/deffilep.y,v
retrieving revision 1.7
diff -u -p -w -r1.7 deffilep.y
--- deffilep.y 2001/08/21 11:42:57 1.7
+++ deffilep.y 2001/09/17 09:28:56
@@ -83,7 +83,7 @@ static void def_heapsize PARAMS ((int, i
static void def_import
PARAMS ((const char *, const char *, const char *, const char *, int));
static void def_library PARAMS ((const char *, int));
-static def_file_module *def_stash_module PARAMS ((def_file *, char *));
+static def_file_module *def_stash_module PARAMS ((def_file *, const char *));
static void def_name PARAMS ((const char *, int));
static void def_section PARAMS ((const char *, int));
static void def_section_alt PARAMS ((const char *, const char *));
@@ -495,7 +495,7 @@ def_file_add_export (def, external_name,
static def_file_module *
def_stash_module (def, name)
def_file *def;
- char *name;
+ const char *name;
{
def_file_module *s;
for (s=def->modules; s; s=s->next)
Index: ld/pe-dll.c
===================================================================
RCS file: /cvs/src/src/ld/pe-dll.c,v
retrieving revision 1.28
diff -u -p -w -r1.28 pe-dll.c
--- pe-dll.c 2001/09/14 14:19:05 1.28
+++ pe-dll.c 2001/09/17 09:28:59
@@ -281,14 +281,16 @@ static void generate_reloc PARAMS ((bfd
static void quoteput PARAMS ((char *, FILE *, int));
static asection *quick_section PARAMS ((bfd *, const char *, int, int));
static void quick_symbol
- PARAMS ((bfd *, char *, char *, char *, asection *, int, int));
+ PARAMS ((bfd *, const char *, const char *, const char *,
+ asection *, int, int));
static void quick_reloc PARAMS ((bfd *, int, int, int));
static bfd *make_head PARAMS ((bfd *));
static bfd *make_tail PARAMS ((bfd *));
static bfd *make_one PARAMS ((def_file_export *, bfd *));
-static bfd *make_singleton_name_thunk PARAMS ((char *, bfd *));
+static bfd *make_singleton_name_thunk PARAMS ((const char *, bfd *));
static char *make_import_fixup_mark PARAMS ((arelent *));
-static bfd *make_import_fixup_entry PARAMS ((char *, char *, char *, bfd *));
+static bfd *make_import_fixup_entry
+ PARAMS ((const char *, const char *, const char *, bfd *));
static unsigned int pe_get16 PARAMS ((bfd *, int));
static unsigned int pe_get32 PARAMS ((bfd *, int));
static unsigned int pe_as32 PARAMS ((void *));
@@ -988,7 +990,7 @@ static struct sec *current_sec;
void
pe_walk_relocs_of_symbol (info, name, cb)
struct bfd_link_info *info;
- CONST char *name;
+ const char *name;
int (*cb) (arelent *, asection *);
{
bfd *b;
@@ -1474,9 +1476,9 @@ quick_section (abfd, name, flags, align)
static void
quick_symbol (abfd, n1, n2, n3, sec, flags, addr)
bfd *abfd;
- char *n1;
- char *n2;
- char *n3;
+ const char *n1;
+ const char *n2;
+ const char *n3;
asection *sec;
int flags;
int addr;
@@ -1893,7 +1895,7 @@ make_one (exp, parent)
static bfd *
make_singleton_name_thunk (import, parent)
- char *import;
+ const char *import;
bfd *parent;
{
/* Name thunks go to idata$4. */
@@ -1941,7 +1943,7 @@ make_import_fixup_mark (rel)
/* We convert reloc to symbol, for later reference. */
static int counter;
static char *fixup_name = NULL;
- static unsigned int buffer_len = 0;
+ static size_t buffer_len = 0;
struct symbol_cache_entry *sym = *rel->sym_ptr_ptr;
@@ -1989,9 +1991,9 @@ make_import_fixup_mark (rel)
static bfd *
make_import_fixup_entry (name, fixup_name, dll_symname,parent)
- char *name;
- char *fixup_name;
- char *dll_symname;
+ const char *name;
+ const char *fixup_name;
+ const char *dll_symname;
bfd *parent;
{
asection *id3;
@@ -2046,7 +2048,7 @@ pe_create_import_fixup (rel)
char buf[300];
struct symbol_cache_entry *sym = *rel->sym_ptr_ptr;
struct bfd_link_hash_entry *name_thunk_sym;
- CONST char *name = sym->name;
+ const char *name = sym->name;
char *fixup_name = make_import_fixup_mark (rel);
sprintf (buf, U ("_nm_thnk_%s"), name);
@@ -2149,7 +2151,7 @@ pe_dll_generate_implib (def, impfilename
static void
add_bfd_to_link (abfd, name, link_info)
bfd *abfd;
- CONST char *name;
+ const char *name;
struct bfd_link_info *link_info;
{
lang_input_statement_type *fake_file;
@@ -2250,8 +2252,8 @@ pe_get16 (abfd, where)
{
unsigned char b[2];
- bfd_seek (abfd, where, SEEK_SET);
- bfd_read (b, 1, 2, abfd);
+ bfd_seek (abfd, (file_ptr) where, SEEK_SET);
+ bfd_bread (b, (bfd_size_type) 2, abfd);
return b[0] + (b[1] << 8);
}
@@ -2262,8 +2264,8 @@ pe_get32 (abfd, where)
{
unsigned char b[4];
- bfd_seek (abfd, where, SEEK_SET);
- bfd_read (b, 1, 4, abfd);
+ bfd_seek (abfd, (file_ptr) where, SEEK_SET);
+ bfd_bread (b, (bfd_size_type) 4, abfd);
return b[0] + (b[1] << 8) + (b[2] << 16) + (b[3] << 24);
}
@@ -2343,8 +2345,8 @@ pe_implied_import_dll (filename)
unsigned long vsize = pe_get32 (dll, secptr1 + 16);
unsigned long fptr = pe_get32 (dll, secptr1 + 20);
- bfd_seek (dll, secptr1, SEEK_SET);
- bfd_read (sname, 1, 8, dll);
+ bfd_seek (dll, (file_ptr) secptr1, SEEK_SET);
+ bfd_bread (sname, (bfd_size_type) 8, dll);
if (vaddr <= export_rva && vaddr + vsize > export_rva)
{
@@ -2356,8 +2358,8 @@ pe_implied_import_dll (filename)
}
expdata = (unsigned char *) xmalloc (export_size);
- bfd_seek (dll, expptr, SEEK_SET);
- bfd_read (expdata, 1, export_size, dll);
+ bfd_seek (dll, (file_ptr) expptr, SEEK_SET);
+ bfd_bread (expdata, (bfd_size_type) export_size, dll);
erva = expdata - export_rva;
if (pe_def_file == 0)
Index: ld/emultempl/beos.em
===================================================================
RCS file: /cvs/src/src/ld/emultempl/beos.em,v
retrieving revision 1.15
diff -u -p -w -r1.15 beos.em
--- beos.em 2001/09/03 07:29:50 1.15
+++ beos.em 2001/09/17 09:29:01
@@ -461,8 +461,8 @@ sort_by_file_name (a, b)
const PTR a;
const PTR b;
{
- lang_statement_union_type **ra = a;
- lang_statement_union_type **rb = b;
+ const lang_statement_union_type *const *ra = a;
+ const lang_statement_union_type *const *rb = b;
int i, a_sec, b_sec;
i = strcmp ((*ra)->input_section.ifile->the_bfd->my_archive->filename,
@@ -518,8 +518,8 @@ sort_by_section_name (a, b)
const PTR a;
const PTR b;
{
- lang_statement_union_type **ra = a;
- lang_statement_union_type **rb = b;
+ const lang_statement_union_type *const *ra = a;
+ const lang_statement_union_type *const *rb = b;
int i;
i = strcmp ((*ra)->input_section.section->name,
(*rb)->input_section.section->name);
Index: ld/emultempl/pe.em
===================================================================
RCS file: /cvs/src/src/ld/emultempl/pe.em,v
retrieving revision 1.51
diff -u -p -w -r1.51 pe.em
--- pe.em 2001/09/12 15:54:37 1.51
+++ pe.em 2001/09/17 09:29:02
@@ -33,6 +33,18 @@ Foundation, Inc., 59 Temple Place - Suit
only determine if the subsystem is console or windows in order to select
the correct entry point by default. */
+#define TARGET_IS_${EMULATION_NAME}
+
+/* Do this before including bfd.h, so we prototype the right functions. */
+#ifdef TARGET_IS_arm_epoc_pe
+#define bfd_arm_pe_allocate_interworking_sections \
+ bfd_arm_epoc_pe_allocate_interworking_sections
+#define bfd_arm_pe_get_bfd_for_interworking \
+ bfd_arm_epoc_pe_get_bfd_for_interworking
+#define bfd_arm_pe_process_before_allocation \
+ bfd_arm_epoc_pe_process_before_allocation
+#endif
+
#include "bfd.h"
#include "sysdep.h"
#include "bfdlink.h"
@@ -59,8 +71,6 @@ Foundation, Inc., 59 Temple Place - Suit
#include <ctype.h>
-#define TARGET_IS_${EMULATION_NAME}
-
/* Permit the emulation parameters to override the default section
alignment by setting OVERRIDE_SECTION_ALIGNMENT. FIXME: This makes
it seem that include/coff/internal.h should not define
@@ -94,15 +104,6 @@ Foundation, Inc., 59 Temple Place - Suit
#define PE_DEF_FILE_ALIGNMENT 0x00000200
#endif
-#ifdef TARGET_IS_arm_epoc_pe
-#define bfd_arm_pe_allocate_interworking_sections \
- bfd_arm_epoc_pe_allocate_interworking_sections
-#define bfd_arm_pe_get_bfd_for_interworking \
- bfd_arm_epoc_pe_get_bfd_for_interworking
-#define bfd_arm_pe_process_before_allocation \
- bfd_arm_epoc_pe_process_before_allocation
-#endif
-
static void gld_${EMULATION_NAME}_set_symbols PARAMS ((void));
static void gld_${EMULATION_NAME}_after_open PARAMS ((void));
static void gld_${EMULATION_NAME}_before_parse PARAMS ((void));
@@ -853,8 +854,8 @@ make_import_fixup (rel, s)
if (pe_dll_extra_pe_debug)
{
- printf ("arelent: %s@%#x: add=%li\n", sym->name,
- (int) rel->address, rel->addend);
+ printf ("arelent: %s@%#lx: add=%li\n", sym->name,
+ (long) rel->address, (long) rel->addend);
}
{
@@ -979,7 +980,7 @@ gld_${EMULATION_NAME}_after_open ()
FIXME: This should be done via a function, rather than by
including an internal BFD header. */
- if (coff_data (output_bfd) == NULL || coff_data (output_bfd)->pe == NULL)
+ if (coff_data (output_bfd) == NULL || coff_data (output_bfd)->pe == 0)
einfo (_("%F%P: PE operations on non PE file.\n"));
pe_data (output_bfd)->pe_opthdr = pe;
^ permalink raw reply [flat|nested] 22+ messages in thread