From 2cae23628a16c1a4bb0736966ffd20bc7b793301 Mon Sep 17 00:00:00 2001 From: David MacKenzie Date: Wed, 3 Nov 1993 21:51:06 +0000 Subject: [PATCH] fix reloc type bits conflict --- include/aout/ChangeLog | 25 +++++++++++++++++++++++++ include/aout/aout64.h | 15 +++++++++------ 2 files changed, 34 insertions(+), 6 deletions(-) diff --git a/include/aout/ChangeLog b/include/aout/ChangeLog index de671f80b6e..9f21a49ff83 100644 --- a/include/aout/ChangeLog +++ b/include/aout/ChangeLog @@ -1,3 +1,28 @@ +Wed Nov 3 13:48:27 1993 David J. Mackenzie (djm@thepub.cygnus.com) + + * aout64.h (RELOC_STD_BITS_BASEREL_LITTLE): Make it 0x10 (Ken's + suggestion) to avoid conflict with RELOC_STD_BITS_EXTERN_LITTLE. + +Fri Oct 29 15:09:52 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com) + + * hp300hpux.h (N_SHARED_LIB): Define to be 0. + +Mon Sep 13 21:00:56 1993 John Gilmore (gnu@cygnus.com) + + * ar.h (ARMAP_TIME_OFFSET): Add and describe. + +Mon Aug 23 Sean Fagan (sef@cygnus.com) + + * aout64.h [ARCH_SIZE != 64]: Allow N_BADMAG to be overridden. + +Mon Aug 16 14:30:14 1993 Jim Kingdon (kingdon@lioth.cygnus.com) + + * stab_gnu.h: Include aout/stab.def not just stab.def. + +Sun Jul 18 21:41:47 1993 Jim Kingdon (kingdon@rtl.cygnus.com) + + * dynix3.h: New, for symmetry running dynix. + Thu Jul 8 12:52:22 1993 Jim Kingdon (kingdon@lioth.cygnus.com) * aout64.h (N_BADMAG): Recognize QMAGIC. diff --git a/include/aout/aout64.h b/include/aout/aout64.h index 1e6ef0ebd03..8f61377bbea 100644 --- a/include/aout/aout64.h +++ b/include/aout/aout64.h @@ -40,10 +40,12 @@ struct external_exec /* This indicates a demand-paged executable with the header in the text. As far as I know it is only used by 386BSD and/or BSDI. */ #define QMAGIC 0314 -#define N_BADMAG(x) (N_MAGIC(x) != OMAGIC \ +# ifndef N_BADMAG +# define N_BADMAG(x) (N_MAGIC(x) != OMAGIC \ && N_MAGIC(x) != NMAGIC \ && N_MAGIC(x) != ZMAGIC \ && N_MAGIC(x) != QMAGIC) +# endif /* N_BADMAG */ #endif #endif @@ -55,12 +57,13 @@ struct external_exec #endif /* The difference between PAGE_SIZE and N_SEGSIZE is that PAGE_SIZE is - the the finest granularity at which you can page something, thus it + the finest granularity at which you can page something, thus it controls the padding (if any) before the text segment of a ZMAGIC file. N_SEGSIZE is the resolution at which things can be marked as read-only versus read/write, so it controls the padding between the - text segment and the data segment. These are the same for most - machines, but different for sun3. */ + text segment and the data segment (in memory; on disk the padding + between them is PAGE_SIZE). PAGE_SIZE and N_SEGSIZE are the same + for most machines, but different for sun3. */ /* By default, segment size is constant. But some machines override this to be a function of the a.out header (e.g. machine type). */ @@ -179,7 +182,7 @@ struct external_exec #ifndef N_DATOFF #define N_DATOFF(x) \ (N_MAGIC(x) == OMAGIC ? N_TXTOFF(x) + N_TXTSIZE(x) : \ - N_SEGSIZE(x) + ((N_TXTOFF(x) + N_TXTSIZE(x) - 1) & ~(N_SEGSIZE(x) - 1))) + PAGE_SIZE + ((N_TXTOFF(x) + N_TXTSIZE(x) - 1) & ~(PAGE_SIZE - 1))) #endif #ifndef N_TRELOFF @@ -295,7 +298,7 @@ struct reloc_std_external { #define RELOC_STD_BITS_EXTERN_LITTLE 0x08 #define RELOC_STD_BITS_BASEREL_BIG 0x08 -#define RELOC_STD_BITS_BASEREL_LITTLE 0x08 +#define RELOC_STD_BITS_BASEREL_LITTLE 0x10 #define RELOC_STD_BITS_JMPTABLE_BIG 0x04 #define RELOC_STD_BITS_JMPTABLE_LITTLE 0x04 -- 2.30.2