diff options
Diffstat (limited to 'gnu')
| -rw-r--r-- | gnu/usr.bin/ld/ld/rrs.c | 4 | ||||
| -rw-r--r-- | gnu/usr.bin/ld/ld/xbits.c | 19 |
2 files changed, 8 insertions, 15 deletions
diff --git a/gnu/usr.bin/ld/ld/rrs.c b/gnu/usr.bin/ld/ld/rrs.c index 51270810350..2089aa6e17d 100644 --- a/gnu/usr.bin/ld/ld/rrs.c +++ b/gnu/usr.bin/ld/ld/rrs.c @@ -1,4 +1,4 @@ -/* $NetBSD: rrs.c,v 1.27 1998/12/17 14:34:51 pk Exp $ */ +/* $NetBSD: rrs.c,v 1.28 1999/01/05 10:02:20 itohy Exp $ */ /*- * Copyright (c) 1998 The NetBSD Foundation, Inc. @@ -1189,7 +1189,7 @@ write_rrs_text() /* Write the symbol table */ if (rrs_symbol_size == sizeof(struct nlist)) - md_swapout_symbols(rrs_symbols, number_of_rrs_symbols); + md_swapout_symbols((struct nlist *) rrs_symbols, number_of_rrs_symbols); else md_swapout_zsymbols(rrs_symbols, number_of_rrs_symbols); mywrite(rrs_symbols, symsize, 1, outstream); diff --git a/gnu/usr.bin/ld/ld/xbits.c b/gnu/usr.bin/ld/ld/xbits.c index 7cea2fbc6ed..ca824408351 100644 --- a/gnu/usr.bin/ld/ld/xbits.c +++ b/gnu/usr.bin/ld/ld/xbits.c @@ -1,4 +1,4 @@ -/* $NetBSD: xbits.c,v 1.7 1998/12/17 14:34:52 pk Exp $ */ +/* $NetBSD: xbits.c,v 1.8 1999/01/05 10:02:21 itohy Exp $ */ /*- * Copyright (c) 1998 The NetBSD Foundation, Inc. @@ -133,8 +133,10 @@ swapin_sod(sodp, n) sodp->sod_major = md_swap_short(sodp->sod_major); sodp->sod_minor = md_swap_short(sodp->sod_minor); sodp->sod_next = md_swap_long(sodp->sod_next); - bits = ((unsigned long *)sodp)[1]; - sodp->sod_library = ((bits >> 24) & 1); + /* swap sod_library flag */ + bits = ((unsigned char *)sodp)[4]; + ((u_int *)sodp)[1] = 0; /* clear reserved bits */ + ((unsigned char *)sodp)[4] = ((bits & 1) << 7) | (bits>>7 & 1); } } @@ -143,16 +145,7 @@ swapout_sod(sodp, n) struct sod *sodp; int n; { - unsigned long bits; - - for (; n; n--, sodp++) { - sodp->sod_name = md_swap_long(sodp->sod_name); - sodp->sod_major = md_swap_short(sodp->sod_major); - sodp->sod_minor = md_swap_short(sodp->sod_minor); - sodp->sod_next = md_swap_long(sodp->sod_next); - bits = (unsigned long)(sodp->sod_library) << 24; - ((unsigned long *)sodp)[1] = bits; - } + swapin_sod(sodp, n); } void |
