]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blob - include/aout/sun4.h
* config/sh/tm-sh.h (BELIEVE_PCC_PROMOTION): Define, so that
[thirdparty/binutils-gdb.git] / include / aout / sun4.h
1 /* SPARC-specific values for a.out files */
2
3 #define PAGE_SIZE 0x2000 /* 8K. aka NBPG in <sys/param.h> */
4 /* Note that some SPARCs have 4K pages, some 8K, some others. */
5
6 #define SEG_SIZE_SPARC PAGE_SIZE
7 #define SEG_SIZE_SUN3 0x20000 /* Resolution of r/w protection hw */
8
9 #define TEXT_START_ADDR PAGE_SIZE /* Location 0 is not accessible */
10 #define N_HEADER_IN_TEXT(x) 1
11
12 /* Non-default definitions of the accessor macros... */
13
14 /* Segment size varies on Sun-3 versus Sun-4. */
15
16 #define N_SEGSIZE(x) (N_MACHTYPE(x) == M_SPARC? SEG_SIZE_SPARC: \
17 N_MACHTYPE(x) == M_68020? SEG_SIZE_SUN3: \
18 /* Guess? */ PAGE_SIZE)
19
20 /* Virtual Address of text segment from the a.out file. For OMAGIC,
21 (almost always "unlinked .o's" these days), should be zero.
22 Sun added a kludge so that shared libraries linked ZMAGIC get
23 an address of zero if a_entry (!!!) is lower than the otherwise
24 expected text address. These kludges have gotta go!
25 For linked files, should reflect reality if we know it. */
26
27 #define N_TXTADDR(x) \
28 (N_MAGIC(x)==OMAGIC? 0 \
29 : (N_MAGIC(x) == ZMAGIC && (x).a_entry < TEXT_START_ADDR)? 0 \
30 : TEXT_START_ADDR+EXEC_BYTES_SIZE)