7
/* uses sigvector instead of sigvec. Could alternately
9
#define sigvec sigvector
10
/* does not have getpagesize() */
15
(printf("sbrk(%x)=%x",n,FIXtemp=sbrk(n)),fflush(stdout),FIXtemp)
18
(printf("brk(%x)=%x",n,FIXtemp=brk(n)),fflush(stdout),FIXtemp)
23
/* since we do brk of the whole thing we use a smaller number */
26
#define ADDITIONAL_FEATURES \
27
ADD_FEATURE("HP9000-300"); \
28
ADD_FEATURE("MC68020"); \
33
#define USE_C_EXTENDED_MUL
34
#define USE_C_EXTENDED_DIV
37
#define DATA_BEGIN (char *)N_DATADDR(header)
39
#define RELOC_FILE "rel_hp300.c"
45
#define N_RELOFF(hdr) RTEXT_OFFSET(hdr)
46
#define N_SYMOFF(hdr) LESYM_OFFSET(hdr)
47
#define N_TXTOFF(hdr) TEXT_OFFSET(hdr)
51
#undef SET_REAL_MAXPAGE
52
#define SET_REAL_MAXPAGE real_maxpage = MAXPAGE
57
#define INIT_ALLOC if (BRK(pagetochar(MAXPAGE)) < 0) \
58
error("Can't allocate. Good-bye!.");
61
#define SEEK_TO_END_OFILE(fp) \
62
do{struct exec header; \
64
fread(&header, sizeof(header), 1, fp); \
65
fseek(fp,RDATA_OFFSET(header)+header.a_drsize,0); \
68
/* have the getcwd command */
72
/* note gabor used the att ldirectory... maybe bsd is ok?? */
76
/* This is for pre 6.01 hpux, you need to create .stb file
77
#define LD_COMMAND(command,main,start,input,ldarg,output) \
78
sprintf(command,"ld -o %s -N -x -R %x %s %s.stb %s", \
79
output,start,input, main,ldarg)
83
#define LD_COMMAND(command,main,start,input,ldarg,output) \
84
sprintf(command, "ld -d -N -x -A %s -R %x %s %s -o %s", \
85
main,start,input,ldarg,output)
94
#define CORE_STARTS_NEAR_0
96
#undef REVERSE_PARAMETER_ORDER
97
#undef CC_OPTIMIZES_TEST
102
#define ALLOCATE_INCREMENTALLY
109
((char *) (header.a_magic.file_type == SHARE_MAGIC || \
110
header.a_magic.file_type == DEMAND_MAGIC) ? \
111
EXEC_ALIGN(header.a_text) : \
114
#undef FILECPY_HEADER
115
#define FILECPY_HEADER \
116
if (header.a_magic.file_type == DEMAND_MAGIC) \
117
{filecpy(save, original, EXEC_PAGESIZE - sizeof(header)); \
118
filecpy(save, original, EXEC_ALIGN(header.a_text));} \
120
filecpy(save, original, header.a_text);
123
#define COPY_TO_SAVE \
124
fseek(save, MODCAL_OFFSET(header), 0); \
125
header.a_data = original_data; \
126
fseek(original, MODCAL_OFFSET(header), 0); \
127
filecpy(save, original, \
130
header.a_dnttsize+header.a_sltsize+header.a_vtsize+ \
131
header.a_trsize+header.a_drsize)
133
/* use #include <fcntl.h> */
137
#define RSYM_AUX "../c/rel_hp300.c"
140
#define FIX_BSS sym->n_type = N_BSS; \
141
val = (val + 3) & ~3;
143
#define PRIVATE_FASLINK
145
/* Begin for cmpinclude */
148
/* End for cmpinclude */