some minor fixes, and one important 2/4 one in the sbreak function
This commit is contained in:
parent
18996b9698
commit
c9e52b65d4
4 changed files with 11 additions and 14 deletions
|
@ -188,7 +188,7 @@ put_locals(name, nnames)
|
||||||
}
|
}
|
||||||
iname++;
|
iname++;
|
||||||
}
|
}
|
||||||
wr_name(name, oname - name);
|
wr_name(name, (unsigned int) (oname - name));
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|
|
@ -46,7 +46,6 @@ static ind_t refused;
|
||||||
sbreak(incr)
|
sbreak(incr)
|
||||||
ind_t incr;
|
ind_t incr;
|
||||||
{
|
{
|
||||||
extern char *sbrk();
|
|
||||||
extern char *brk();
|
extern char *brk();
|
||||||
unsigned int inc;
|
unsigned int inc;
|
||||||
|
|
||||||
|
@ -54,14 +53,14 @@ sbreak(incr)
|
||||||
|
|
||||||
inc = incr;
|
inc = incr;
|
||||||
if ((refused && refused < incr) ||
|
if ((refused && refused < incr) ||
|
||||||
inc != incr ||
|
(sizeof(char *) < sizeof(long) &&
|
||||||
BASE + inc < BASE ||
|
(inc != incr || BASE + inc < BASE)) ||
|
||||||
(int) brk(BASE + inc) == -1) {
|
(int) brk(BASE + incr) == -1) {
|
||||||
if (!refused || refused > incr)
|
if (!refused || refused > incr)
|
||||||
refused = incr;
|
refused = incr;
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
BASE += inc;
|
BASE += incr;
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -74,7 +73,6 @@ init_core()
|
||||||
register char *base;
|
register char *base;
|
||||||
register ind_t total_size;
|
register ind_t total_size;
|
||||||
register struct memory *mem;
|
register struct memory *mem;
|
||||||
extern char *brk();
|
|
||||||
extern char *sbrk();
|
extern char *sbrk();
|
||||||
|
|
||||||
#include "mach.c"
|
#include "mach.c"
|
||||||
|
|
|
@ -63,6 +63,7 @@ int
|
||||||
getfile(filename)
|
getfile(filename)
|
||||||
char *filename;
|
char *filename;
|
||||||
{
|
{
|
||||||
|
unsigned int rd_unsigned2();
|
||||||
struct ar_hdr archive_header;
|
struct ar_hdr archive_header;
|
||||||
ushort magic_number;
|
ushort magic_number;
|
||||||
#ifdef SYMDBUG
|
#ifdef SYMDBUG
|
||||||
|
@ -515,7 +516,7 @@ modulsize(head)
|
||||||
|
|
||||||
static struct outrelo *walkrelo;
|
static struct outrelo *walkrelo;
|
||||||
static unsigned short cnt_relos;
|
static unsigned short cnt_relos;
|
||||||
static unsigned short index;
|
static unsigned short relind;
|
||||||
#define _RELSIZ 64
|
#define _RELSIZ 64
|
||||||
|
|
||||||
startrelo(head)
|
startrelo(head)
|
||||||
|
@ -528,7 +529,7 @@ startrelo(head)
|
||||||
walkrelo = (struct outrelo *)address(ALLORELO, reloindex);
|
walkrelo = (struct outrelo *)address(ALLORELO, reloindex);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
index = _RELSIZ;
|
relind = _RELSIZ;
|
||||||
rd_rew_relos(head);
|
rd_rew_relos(head);
|
||||||
cnt_relos = head->oh_nrelo;
|
cnt_relos = head->oh_nrelo;
|
||||||
}
|
}
|
||||||
|
@ -542,14 +543,14 @@ nextrelo()
|
||||||
if (incore)
|
if (incore)
|
||||||
return walkrelo++;
|
return walkrelo++;
|
||||||
|
|
||||||
if (index == _RELSIZ) {
|
if (relind == _RELSIZ) {
|
||||||
int i = cnt_relos >= _RELSIZ ? _RELSIZ : cnt_relos;
|
int i = cnt_relos >= _RELSIZ ? _RELSIZ : cnt_relos;
|
||||||
|
|
||||||
cnt_relos -= i;
|
cnt_relos -= i;
|
||||||
rd_relo(relobuf, i);
|
rd_relo(relobuf, i);
|
||||||
index = 0;
|
relind = 0;
|
||||||
}
|
}
|
||||||
return &relobuf[index++];
|
return &relobuf[relind++];
|
||||||
}
|
}
|
||||||
|
|
||||||
/* ------------------------------------------------------------------------- */
|
/* ------------------------------------------------------------------------- */
|
||||||
|
|
|
@ -61,7 +61,6 @@ sectname(sectindex)
|
||||||
*/
|
*/
|
||||||
end_write()
|
end_write()
|
||||||
{
|
{
|
||||||
register ushort cnt;
|
|
||||||
register struct outname *name;
|
register struct outname *name;
|
||||||
register int sectindex;
|
register int sectindex;
|
||||||
extern ushort NGlobals;
|
extern ushort NGlobals;
|
||||||
|
@ -69,7 +68,6 @@ end_write()
|
||||||
|
|
||||||
assert(!incore);
|
assert(!incore);
|
||||||
assert(!(flagword & SFLAG));
|
assert(!(flagword & SFLAG));
|
||||||
cnt = NGlobals;
|
|
||||||
name = (struct outname *)address(ALLOGLOB, (ind_t)0);
|
name = (struct outname *)address(ALLOGLOB, (ind_t)0);
|
||||||
namecpy(name, NGlobals, off_char);
|
namecpy(name, NGlobals, off_char);
|
||||||
wr_name(name, NGlobals);
|
wr_name(name, NGlobals);
|
||||||
|
|
Loading…
Add table
Reference in a new issue