mirror of
https://github.com/vishapoberon/compiler.git
synced 2026-04-06 05:12:26 +00:00
Update C bootstrap.
This commit is contained in:
parent
d5c3d2aae5
commit
51ae4c3241
186 changed files with 461 additions and 371 deletions
|
|
@ -237,7 +237,7 @@ static inline double SYSTEM_ABSD(double i) {return i >= 0.0 ? i : -i;}
|
||||||
#define __GUARDR(r, typ, level) (*((typ*)(__IS(r##__typ,typ,level)?r:(__HALT(-5),r))))
|
#define __GUARDR(r, typ, level) (*((typ*)(__IS(r##__typ,typ,level)?r:(__HALT(-5),r))))
|
||||||
#define __GUARDA(p, typ, level) ((struct typ*)(__IS(__TYPEOF(p),typ,level)?p:(__HALT(-5),p)))
|
#define __GUARDA(p, typ, level) ((struct typ*)(__IS(__TYPEOF(p),typ,level)?p:(__HALT(-5),p)))
|
||||||
#define __GUARDEQR(p, dyntyp, typ) if(dyntyp!=typ##__typ) __HALT(-6);*(p)
|
#define __GUARDEQR(p, dyntyp, typ) if(dyntyp!=typ##__typ) __HALT(-6);*(p)
|
||||||
#define __GUARDEQP(p, typ) if(__TYPEOF(p)!=typ##__typ)__HALT(-6);*(p)
|
#define __GUARDEQP(p, typ) if(__TYPEOF(p)!=typ##__typ)__HALT(-6);*((typ*)p)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspamS */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspamS */
|
||||||
|
|
||||||
#define SHORTINT INT8
|
#define SHORTINT INT8
|
||||||
#define INTEGER INT16
|
#define INTEGER INT16
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
||||||
|
|
||||||
#define SHORTINT INT8
|
#define SHORTINT INT8
|
||||||
#define INTEGER INT16
|
#define INTEGER INT16
|
||||||
|
|
@ -19,6 +19,6 @@ export void *Configuration__init(void)
|
||||||
__DEFMOD;
|
__DEFMOD;
|
||||||
__REGMOD("Configuration", 0);
|
__REGMOD("Configuration", 0);
|
||||||
/* BEGIN */
|
/* BEGIN */
|
||||||
__MOVE("2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8.", Configuration_versionLong, 75);
|
__MOVE("2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8.", Configuration_versionLong, 75);
|
||||||
__ENDMOD;
|
__ENDMOD;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
||||||
|
|
||||||
#ifndef Configuration__h
|
#ifndef Configuration__h
|
||||||
#define Configuration__h
|
#define Configuration__h
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. tspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. tspaSF */
|
||||||
|
|
||||||
#define SHORTINT INT8
|
#define SHORTINT INT8
|
||||||
#define INTEGER INT16
|
#define INTEGER INT16
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. tspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. tspaSF */
|
||||||
|
|
||||||
#ifndef Files__h
|
#ifndef Files__h
|
||||||
#define Files__h
|
#define Files__h
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. tsSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. tsSF */
|
||||||
|
|
||||||
#define SHORTINT INT8
|
#define SHORTINT INT8
|
||||||
#define INTEGER INT16
|
#define INTEGER INT16
|
||||||
|
|
@ -68,7 +68,7 @@ static INT32 Heap_freeList[10];
|
||||||
static INT32 Heap_bigBlocks;
|
static INT32 Heap_bigBlocks;
|
||||||
export INT32 Heap_allocated;
|
export INT32 Heap_allocated;
|
||||||
static BOOLEAN Heap_firstTry;
|
static BOOLEAN Heap_firstTry;
|
||||||
static INT32 Heap_heap, Heap_heapend;
|
static INT32 Heap_heap, Heap_heapNegMin, Heap_heapNegMax, Heap_heapPosMin, Heap_heapPosMax;
|
||||||
export INT32 Heap_heapsize;
|
export INT32 Heap_heapsize;
|
||||||
static Heap_FinNode Heap_fin;
|
static Heap_FinNode Heap_fin;
|
||||||
static INT16 Heap_lockdepth;
|
static INT16 Heap_lockdepth;
|
||||||
|
|
@ -170,16 +170,33 @@ void Heap_INCREF (Heap_Module m)
|
||||||
|
|
||||||
static INT32 Heap_NewChunk (INT32 blksz)
|
static INT32 Heap_NewChunk (INT32 blksz)
|
||||||
{
|
{
|
||||||
INT32 chnk;
|
INT32 chnk, blk, end;
|
||||||
chnk = Heap_OSAllocate(blksz + 12);
|
chnk = Heap_OSAllocate(blksz + 12);
|
||||||
if (chnk != 0) {
|
if (chnk != 0) {
|
||||||
__PUT(chnk + 4, chnk + (12 + blksz), INT32);
|
blk = chnk + 12;
|
||||||
__PUT(chnk + 12, chnk + 16, INT32);
|
end = blk + blksz;
|
||||||
__PUT(chnk + 16, blksz, INT32);
|
__PUT(chnk + 4, end, INT32);
|
||||||
__PUT(chnk + 20, -4, INT32);
|
__PUT(blk, blk + 4, INT32);
|
||||||
__PUT(chnk + 24, Heap_bigBlocks, INT32);
|
__PUT(blk + 4, blksz, INT32);
|
||||||
Heap_bigBlocks = chnk + 12;
|
__PUT(blk + 8, -4, INT32);
|
||||||
|
__PUT(blk + 12, Heap_bigBlocks, INT32);
|
||||||
|
Heap_bigBlocks = blk;
|
||||||
Heap_heapsize += blksz;
|
Heap_heapsize += blksz;
|
||||||
|
if (chnk > 0) {
|
||||||
|
if (chnk < Heap_heapPosMin) {
|
||||||
|
Heap_heapPosMin = blk + 4;
|
||||||
|
}
|
||||||
|
if (end > Heap_heapPosMax) {
|
||||||
|
Heap_heapPosMax = end;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
if (chnk < Heap_heapNegMin) {
|
||||||
|
Heap_heapNegMin = blk + 4;
|
||||||
|
}
|
||||||
|
if (end > Heap_heapNegMax) {
|
||||||
|
Heap_heapNegMax = end;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
return chnk;
|
return chnk;
|
||||||
}
|
}
|
||||||
|
|
@ -207,9 +224,6 @@ static void Heap_ExtendHeap (INT32 blksz)
|
||||||
__PUT(chnk, next, INT32);
|
__PUT(chnk, next, INT32);
|
||||||
__PUT(j, chnk, INT32);
|
__PUT(j, chnk, INT32);
|
||||||
}
|
}
|
||||||
if (next == 0) {
|
|
||||||
__GET(chnk + 4, Heap_heapend, INT32);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -592,7 +606,7 @@ static void Heap_MarkStack (INT32 n, INT32 *cand, ADDRESS cand__len)
|
||||||
}
|
}
|
||||||
while (sp != stack0) {
|
while (sp != stack0) {
|
||||||
__GET(sp, p, INT32);
|
__GET(sp, p, INT32);
|
||||||
if ((p > Heap_heap && p < Heap_heapend)) {
|
if ((((p > 0 && p >= Heap_heapPosMin)) && p < Heap_heapPosMax) || (((p < 0 && p >= Heap_heapNegMin)) && p < Heap_heapNegMax)) {
|
||||||
if (nofcand == cand__len) {
|
if (nofcand == cand__len) {
|
||||||
Heap_HeapSort(nofcand, (void*)cand, cand__len);
|
Heap_HeapSort(nofcand, (void*)cand, cand__len);
|
||||||
Heap_MarkCandidates(nofcand, (void*)cand, cand__len);
|
Heap_MarkCandidates(nofcand, (void*)cand, cand__len);
|
||||||
|
|
@ -703,16 +717,20 @@ void Heap_RegisterFinalizer (SYSTEM_PTR obj, Heap_Finalizer finalize)
|
||||||
|
|
||||||
void Heap_InitHeap (void)
|
void Heap_InitHeap (void)
|
||||||
{
|
{
|
||||||
Heap_heap = Heap_NewChunk(128000);
|
Heap_heap = 0;
|
||||||
__GET(Heap_heap + 4, Heap_heapend, INT32);
|
Heap_heapsize = 0;
|
||||||
__PUT(Heap_heap, 0, INT32);
|
|
||||||
Heap_allocated = 0;
|
Heap_allocated = 0;
|
||||||
|
Heap_lockdepth = 0;
|
||||||
|
Heap_heapPosMin = 2147483647;
|
||||||
|
Heap_heapPosMax = 0;
|
||||||
|
Heap_heapNegMin = 0;
|
||||||
|
Heap_heapNegMax = (-2147483647-1);
|
||||||
|
Heap_heap = Heap_NewChunk(128000);
|
||||||
|
__PUT(Heap_heap, 0, INT32);
|
||||||
Heap_firstTry = 1;
|
Heap_firstTry = 1;
|
||||||
Heap_freeList[9] = 1;
|
Heap_freeList[9] = 1;
|
||||||
Heap_lockdepth = 0;
|
|
||||||
Heap_FileCount = 0;
|
Heap_FileCount = 0;
|
||||||
Heap_modules = NIL;
|
Heap_modules = NIL;
|
||||||
Heap_heapsize = 0;
|
|
||||||
Heap_bigBlocks = 0;
|
Heap_bigBlocks = 0;
|
||||||
Heap_fin = NIL;
|
Heap_fin = NIL;
|
||||||
Heap_interrupted = 0;
|
Heap_interrupted = 0;
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. tsSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. tsSF */
|
||||||
|
|
||||||
#ifndef Heap__h
|
#ifndef Heap__h
|
||||||
#define Heap__h
|
#define Heap__h
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
||||||
|
|
||||||
#define SHORTINT INT8
|
#define SHORTINT INT8
|
||||||
#define INTEGER INT16
|
#define INTEGER INT16
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
||||||
|
|
||||||
#ifndef Modules__h
|
#ifndef Modules__h
|
||||||
#define Modules__h
|
#define Modules__h
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
||||||
|
|
||||||
#define SHORTINT INT8
|
#define SHORTINT INT8
|
||||||
#define INTEGER INT16
|
#define INTEGER INT16
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
||||||
|
|
||||||
#ifndef OPB__h
|
#ifndef OPB__h
|
||||||
#define OPB__h
|
#define OPB__h
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
||||||
|
|
||||||
#define SHORTINT INT8
|
#define SHORTINT INT8
|
||||||
#define INTEGER INT16
|
#define INTEGER INT16
|
||||||
|
|
@ -1659,9 +1659,9 @@ void OPC_CompleteIdent (OPT_Object obj)
|
||||||
OPC_Ident(obj);
|
OPC_Ident(obj);
|
||||||
OPM_WriteString((CHAR*)"__", 3);
|
OPM_WriteString((CHAR*)"__", 3);
|
||||||
} else {
|
} else {
|
||||||
OPM_WriteString((CHAR*)"((", 3);
|
OPM_WriteString((CHAR*)"(*(", 4);
|
||||||
OPC_Ident(obj->typ->strobj);
|
OPC_Ident(obj->typ->strobj);
|
||||||
OPM_Write(')');
|
OPM_WriteString((CHAR*)"*)&", 4);
|
||||||
OPC_Ident(obj);
|
OPC_Ident(obj);
|
||||||
OPM_Write(')');
|
OPM_Write(')');
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
||||||
|
|
||||||
#ifndef OPC__h
|
#ifndef OPC__h
|
||||||
#define OPC__h
|
#define OPC__h
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
||||||
|
|
||||||
#define SHORTINT INT8
|
#define SHORTINT INT8
|
||||||
#define INTEGER INT16
|
#define INTEGER INT16
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
||||||
|
|
||||||
#ifndef OPM__h
|
#ifndef OPM__h
|
||||||
#define OPM__h
|
#define OPM__h
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
||||||
|
|
||||||
#define SHORTINT INT8
|
#define SHORTINT INT8
|
||||||
#define INTEGER INT16
|
#define INTEGER INT16
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
||||||
|
|
||||||
#ifndef OPP__h
|
#ifndef OPP__h
|
||||||
#define OPP__h
|
#define OPP__h
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. tspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. tspaSF */
|
||||||
|
|
||||||
#define SHORTINT INT8
|
#define SHORTINT INT8
|
||||||
#define INTEGER INT16
|
#define INTEGER INT16
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. tspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. tspaSF */
|
||||||
|
|
||||||
#ifndef OPS__h
|
#ifndef OPS__h
|
||||||
#define OPS__h
|
#define OPS__h
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
||||||
|
|
||||||
#define SHORTINT INT8
|
#define SHORTINT INT8
|
||||||
#define INTEGER INT16
|
#define INTEGER INT16
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
||||||
|
|
||||||
#ifndef OPT__h
|
#ifndef OPT__h
|
||||||
#define OPT__h
|
#define OPT__h
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
||||||
|
|
||||||
#define SHORTINT INT8
|
#define SHORTINT INT8
|
||||||
#define INTEGER INT16
|
#define INTEGER INT16
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
||||||
|
|
||||||
#ifndef OPV__h
|
#ifndef OPV__h
|
||||||
#define OPV__h
|
#define OPV__h
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
||||||
|
|
||||||
#define SHORTINT INT8
|
#define SHORTINT INT8
|
||||||
#define INTEGER INT16
|
#define INTEGER INT16
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
||||||
|
|
||||||
#ifndef Out__h
|
#ifndef Out__h
|
||||||
#define Out__h
|
#define Out__h
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
||||||
|
|
||||||
#define SHORTINT INT8
|
#define SHORTINT INT8
|
||||||
#define INTEGER INT16
|
#define INTEGER INT16
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
||||||
|
|
||||||
#ifndef Platform__h
|
#ifndef Platform__h
|
||||||
#define Platform__h
|
#define Platform__h
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
||||||
|
|
||||||
#define SHORTINT INT8
|
#define SHORTINT INT8
|
||||||
#define INTEGER INT16
|
#define INTEGER INT16
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
||||||
|
|
||||||
#ifndef Reals__h
|
#ifndef Reals__h
|
||||||
#define Reals__h
|
#define Reals__h
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
||||||
|
|
||||||
#define SHORTINT INT8
|
#define SHORTINT INT8
|
||||||
#define INTEGER INT16
|
#define INTEGER INT16
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
||||||
|
|
||||||
#ifndef Strings__h
|
#ifndef Strings__h
|
||||||
#define Strings__h
|
#define Strings__h
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
||||||
|
|
||||||
#define SHORTINT INT8
|
#define SHORTINT INT8
|
||||||
#define INTEGER INT16
|
#define INTEGER INT16
|
||||||
|
|
@ -390,27 +390,27 @@ static void Texts_HandleAlien (Texts_Elem E, Texts_ElemMsg *msg, ADDRESS *msg__t
|
||||||
if (__IS(msg__typ, Texts_CopyMsg, 1)) {
|
if (__IS(msg__typ, Texts_CopyMsg, 1)) {
|
||||||
Texts_CopyMsg *msg__ = (void*)msg;
|
Texts_CopyMsg *msg__ = (void*)msg;
|
||||||
__NEW(e, Texts__1);
|
__NEW(e, Texts__1);
|
||||||
Texts_CopyElem((void*)((Texts_Alien)E), (void*)e);
|
Texts_CopyElem((void*)(*(Texts_Alien*)&E), (void*)e);
|
||||||
e->file = ((Texts_Alien)E)->file;
|
e->file = (*(Texts_Alien*)&E)->file;
|
||||||
e->org = ((Texts_Alien)E)->org;
|
e->org = (*(Texts_Alien*)&E)->org;
|
||||||
e->span = ((Texts_Alien)E)->span;
|
e->span = (*(Texts_Alien*)&E)->span;
|
||||||
__COPY(((Texts_Alien)E)->mod, e->mod, 32);
|
__COPY((*(Texts_Alien*)&E)->mod, e->mod, 32);
|
||||||
__COPY(((Texts_Alien)E)->proc, e->proc, 32);
|
__COPY((*(Texts_Alien*)&E)->proc, e->proc, 32);
|
||||||
(*msg__).e = (Texts_Elem)e;
|
(*msg__).e = (Texts_Elem)e;
|
||||||
} else __WITHCHK;
|
} else __WITHCHK;
|
||||||
} else if (__IS(msg__typ, Texts_IdentifyMsg, 1)) {
|
} else if (__IS(msg__typ, Texts_IdentifyMsg, 1)) {
|
||||||
if (__IS(msg__typ, Texts_IdentifyMsg, 1)) {
|
if (__IS(msg__typ, Texts_IdentifyMsg, 1)) {
|
||||||
Texts_IdentifyMsg *msg__ = (void*)msg;
|
Texts_IdentifyMsg *msg__ = (void*)msg;
|
||||||
__COPY(((Texts_Alien)E)->mod, (*msg__).mod, 32);
|
__COPY((*(Texts_Alien*)&E)->mod, (*msg__).mod, 32);
|
||||||
__COPY(((Texts_Alien)E)->proc, (*msg__).proc, 32);
|
__COPY((*(Texts_Alien*)&E)->proc, (*msg__).proc, 32);
|
||||||
(*msg__).mod[31] = 0x01;
|
(*msg__).mod[31] = 0x01;
|
||||||
} else __WITHCHK;
|
} else __WITHCHK;
|
||||||
} else if (__IS(msg__typ, Texts_FileMsg, 1)) {
|
} else if (__IS(msg__typ, Texts_FileMsg, 1)) {
|
||||||
if (__IS(msg__typ, Texts_FileMsg, 1)) {
|
if (__IS(msg__typ, Texts_FileMsg, 1)) {
|
||||||
Texts_FileMsg *msg__ = (void*)msg;
|
Texts_FileMsg *msg__ = (void*)msg;
|
||||||
if ((*msg__).id == 1) {
|
if ((*msg__).id == 1) {
|
||||||
Files_Set(&r, Files_Rider__typ, ((Texts_Alien)E)->file, ((Texts_Alien)E)->org);
|
Files_Set(&r, Files_Rider__typ, (*(Texts_Alien*)&E)->file, (*(Texts_Alien*)&E)->org);
|
||||||
i = ((Texts_Alien)E)->span;
|
i = (*(Texts_Alien*)&E)->span;
|
||||||
while (i > 0) {
|
while (i > 0) {
|
||||||
Files_Read(&r, Files_Rider__typ, (void*)&ch);
|
Files_Read(&r, Files_Rider__typ, (void*)&ch);
|
||||||
Files_Write(&(*msg__).r, Files_Rider__typ, ch);
|
Files_Write(&(*msg__).r, Files_Rider__typ, ch);
|
||||||
|
|
@ -646,7 +646,7 @@ void Texts_Read (Texts_Reader *R, ADDRESS *R__typ, CHAR *ch)
|
||||||
u = u->next;
|
u = u->next;
|
||||||
if (__ISP(u, Texts_PieceDesc, 1)) {
|
if (__ISP(u, Texts_PieceDesc, 1)) {
|
||||||
if (__ISP(u, Texts_PieceDesc, 1)) {
|
if (__ISP(u, Texts_PieceDesc, 1)) {
|
||||||
Files_Set(&(*R).rider, Files_Rider__typ, ((Texts_Piece)u)->file, ((Texts_Piece)u)->org);
|
Files_Set(&(*R).rider, Files_Rider__typ, (*(Texts_Piece*)&u)->file, (*(Texts_Piece*)&u)->org);
|
||||||
} else __WITHCHK;
|
} else __WITHCHK;
|
||||||
}
|
}
|
||||||
(*R).run = u;
|
(*R).run = u;
|
||||||
|
|
@ -673,7 +673,7 @@ void Texts_ReadElem (Texts_Reader *R, ADDRESS *R__typ)
|
||||||
(*R).elem = __GUARDP(u, Texts_ElemDesc, 1);
|
(*R).elem = __GUARDP(u, Texts_ElemDesc, 1);
|
||||||
if (__ISP(un, Texts_PieceDesc, 1)) {
|
if (__ISP(un, Texts_PieceDesc, 1)) {
|
||||||
if (__ISP(un, Texts_PieceDesc, 1)) {
|
if (__ISP(un, Texts_PieceDesc, 1)) {
|
||||||
Files_Set(&(*R).rider, Files_Rider__typ, ((Texts_Piece)un)->file, ((Texts_Piece)un)->org);
|
Files_Set(&(*R).rider, Files_Rider__typ, (*(Texts_Piece*)&un)->file, (*(Texts_Piece*)&un)->org);
|
||||||
} else __WITHCHK;
|
} else __WITHCHK;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
|
|
@ -1715,9 +1715,9 @@ void Texts_Store (Files_Rider *r, ADDRESS *r__typ, Texts_Text T)
|
||||||
while (u != T->head) {
|
while (u != T->head) {
|
||||||
if (__ISP(u, Texts_PieceDesc, 1)) {
|
if (__ISP(u, Texts_PieceDesc, 1)) {
|
||||||
if (__ISP(u, Texts_PieceDesc, 1)) {
|
if (__ISP(u, Texts_PieceDesc, 1)) {
|
||||||
if (((Texts_Piece)u)->ascii) {
|
if ((*(Texts_Piece*)&u)->ascii) {
|
||||||
Files_Set(&r1, Files_Rider__typ, ((Texts_Piece)u)->file, ((Texts_Piece)u)->org);
|
Files_Set(&r1, Files_Rider__typ, (*(Texts_Piece*)&u)->file, (*(Texts_Piece*)&u)->org);
|
||||||
delta = ((Texts_Piece)u)->len;
|
delta = (*(Texts_Piece*)&u)->len;
|
||||||
while (delta > 0) {
|
while (delta > 0) {
|
||||||
Files_Read(&r1, Files_Rider__typ, (void*)&ch);
|
Files_Read(&r1, Files_Rider__typ, (void*)&ch);
|
||||||
delta -= 1;
|
delta -= 1;
|
||||||
|
|
@ -1728,8 +1728,8 @@ void Texts_Store (Files_Rider *r, ADDRESS *r__typ, Texts_Text T)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
Files_Set(&r1, Files_Rider__typ, ((Texts_Piece)u)->file, ((Texts_Piece)u)->org);
|
Files_Set(&r1, Files_Rider__typ, (*(Texts_Piece*)&u)->file, (*(Texts_Piece*)&u)->org);
|
||||||
delta = ((Texts_Piece)u)->len;
|
delta = (*(Texts_Piece*)&u)->len;
|
||||||
while (delta > 1024) {
|
while (delta > 1024) {
|
||||||
Files_ReadBytes(&r1, Files_Rider__typ, (void*)block, 1024, 1024);
|
Files_ReadBytes(&r1, Files_Rider__typ, (void*)block, 1024, 1024);
|
||||||
Files_WriteBytes(&msg.r, Files_Rider__typ, (void*)block, 1024, 1024);
|
Files_WriteBytes(&msg.r, Files_Rider__typ, (void*)block, 1024, 1024);
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
||||||
|
|
||||||
#ifndef Texts__h
|
#ifndef Texts__h
|
||||||
#define Texts__h
|
#define Texts__h
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
||||||
|
|
||||||
#define SHORTINT INT8
|
#define SHORTINT INT8
|
||||||
#define INTEGER INT16
|
#define INTEGER INT16
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
||||||
|
|
||||||
#ifndef VT100__h
|
#ifndef VT100__h
|
||||||
#define VT100__h
|
#define VT100__h
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
||||||
|
|
||||||
#define SHORTINT INT8
|
#define SHORTINT INT8
|
||||||
#define INTEGER INT16
|
#define INTEGER INT16
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
||||||
|
|
||||||
#ifndef extTools__h
|
#ifndef extTools__h
|
||||||
#define extTools__h
|
#define extTools__h
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspamS */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspamS */
|
||||||
|
|
||||||
#define SHORTINT INT8
|
#define SHORTINT INT8
|
||||||
#define INTEGER INT16
|
#define INTEGER INT16
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
||||||
|
|
||||||
#define SHORTINT INT8
|
#define SHORTINT INT8
|
||||||
#define INTEGER INT16
|
#define INTEGER INT16
|
||||||
|
|
@ -19,6 +19,6 @@ export void *Configuration__init(void)
|
||||||
__DEFMOD;
|
__DEFMOD;
|
||||||
__REGMOD("Configuration", 0);
|
__REGMOD("Configuration", 0);
|
||||||
/* BEGIN */
|
/* BEGIN */
|
||||||
__MOVE("2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8.", Configuration_versionLong, 75);
|
__MOVE("2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8.", Configuration_versionLong, 75);
|
||||||
__ENDMOD;
|
__ENDMOD;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
||||||
|
|
||||||
#ifndef Configuration__h
|
#ifndef Configuration__h
|
||||||
#define Configuration__h
|
#define Configuration__h
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. tspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. tspaSF */
|
||||||
|
|
||||||
#define SHORTINT INT8
|
#define SHORTINT INT8
|
||||||
#define INTEGER INT16
|
#define INTEGER INT16
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. tspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. tspaSF */
|
||||||
|
|
||||||
#ifndef Files__h
|
#ifndef Files__h
|
||||||
#define Files__h
|
#define Files__h
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. tsSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. tsSF */
|
||||||
|
|
||||||
#define SHORTINT INT8
|
#define SHORTINT INT8
|
||||||
#define INTEGER INT16
|
#define INTEGER INT16
|
||||||
|
|
@ -68,7 +68,7 @@ static INT32 Heap_freeList[10];
|
||||||
static INT32 Heap_bigBlocks;
|
static INT32 Heap_bigBlocks;
|
||||||
export INT32 Heap_allocated;
|
export INT32 Heap_allocated;
|
||||||
static BOOLEAN Heap_firstTry;
|
static BOOLEAN Heap_firstTry;
|
||||||
static INT32 Heap_heap, Heap_heapend;
|
static INT32 Heap_heap, Heap_heapNegMin, Heap_heapNegMax, Heap_heapPosMin, Heap_heapPosMax;
|
||||||
export INT32 Heap_heapsize;
|
export INT32 Heap_heapsize;
|
||||||
static Heap_FinNode Heap_fin;
|
static Heap_FinNode Heap_fin;
|
||||||
static INT16 Heap_lockdepth;
|
static INT16 Heap_lockdepth;
|
||||||
|
|
@ -170,16 +170,33 @@ void Heap_INCREF (Heap_Module m)
|
||||||
|
|
||||||
static INT32 Heap_NewChunk (INT32 blksz)
|
static INT32 Heap_NewChunk (INT32 blksz)
|
||||||
{
|
{
|
||||||
INT32 chnk;
|
INT32 chnk, blk, end;
|
||||||
chnk = Heap_OSAllocate(blksz + 12);
|
chnk = Heap_OSAllocate(blksz + 12);
|
||||||
if (chnk != 0) {
|
if (chnk != 0) {
|
||||||
__PUT(chnk + 4, chnk + (12 + blksz), INT32);
|
blk = chnk + 12;
|
||||||
__PUT(chnk + 12, chnk + 16, INT32);
|
end = blk + blksz;
|
||||||
__PUT(chnk + 16, blksz, INT32);
|
__PUT(chnk + 4, end, INT32);
|
||||||
__PUT(chnk + 20, -4, INT32);
|
__PUT(blk, blk + 4, INT32);
|
||||||
__PUT(chnk + 24, Heap_bigBlocks, INT32);
|
__PUT(blk + 4, blksz, INT32);
|
||||||
Heap_bigBlocks = chnk + 12;
|
__PUT(blk + 8, -4, INT32);
|
||||||
|
__PUT(blk + 12, Heap_bigBlocks, INT32);
|
||||||
|
Heap_bigBlocks = blk;
|
||||||
Heap_heapsize += blksz;
|
Heap_heapsize += blksz;
|
||||||
|
if (chnk > 0) {
|
||||||
|
if (chnk < Heap_heapPosMin) {
|
||||||
|
Heap_heapPosMin = blk + 4;
|
||||||
|
}
|
||||||
|
if (end > Heap_heapPosMax) {
|
||||||
|
Heap_heapPosMax = end;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
if (chnk < Heap_heapNegMin) {
|
||||||
|
Heap_heapNegMin = blk + 4;
|
||||||
|
}
|
||||||
|
if (end > Heap_heapNegMax) {
|
||||||
|
Heap_heapNegMax = end;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
return chnk;
|
return chnk;
|
||||||
}
|
}
|
||||||
|
|
@ -207,9 +224,6 @@ static void Heap_ExtendHeap (INT32 blksz)
|
||||||
__PUT(chnk, next, INT32);
|
__PUT(chnk, next, INT32);
|
||||||
__PUT(j, chnk, INT32);
|
__PUT(j, chnk, INT32);
|
||||||
}
|
}
|
||||||
if (next == 0) {
|
|
||||||
__GET(chnk + 4, Heap_heapend, INT32);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -592,7 +606,7 @@ static void Heap_MarkStack (INT32 n, INT32 *cand, ADDRESS cand__len)
|
||||||
}
|
}
|
||||||
while (sp != stack0) {
|
while (sp != stack0) {
|
||||||
__GET(sp, p, INT32);
|
__GET(sp, p, INT32);
|
||||||
if ((p > Heap_heap && p < Heap_heapend)) {
|
if ((((p > 0 && p >= Heap_heapPosMin)) && p < Heap_heapPosMax) || (((p < 0 && p >= Heap_heapNegMin)) && p < Heap_heapNegMax)) {
|
||||||
if (nofcand == cand__len) {
|
if (nofcand == cand__len) {
|
||||||
Heap_HeapSort(nofcand, (void*)cand, cand__len);
|
Heap_HeapSort(nofcand, (void*)cand, cand__len);
|
||||||
Heap_MarkCandidates(nofcand, (void*)cand, cand__len);
|
Heap_MarkCandidates(nofcand, (void*)cand, cand__len);
|
||||||
|
|
@ -703,16 +717,20 @@ void Heap_RegisterFinalizer (SYSTEM_PTR obj, Heap_Finalizer finalize)
|
||||||
|
|
||||||
void Heap_InitHeap (void)
|
void Heap_InitHeap (void)
|
||||||
{
|
{
|
||||||
Heap_heap = Heap_NewChunk(128000);
|
Heap_heap = 0;
|
||||||
__GET(Heap_heap + 4, Heap_heapend, INT32);
|
Heap_heapsize = 0;
|
||||||
__PUT(Heap_heap, 0, INT32);
|
|
||||||
Heap_allocated = 0;
|
Heap_allocated = 0;
|
||||||
|
Heap_lockdepth = 0;
|
||||||
|
Heap_heapPosMin = 2147483647;
|
||||||
|
Heap_heapPosMax = 0;
|
||||||
|
Heap_heapNegMin = 0;
|
||||||
|
Heap_heapNegMax = (-2147483647-1);
|
||||||
|
Heap_heap = Heap_NewChunk(128000);
|
||||||
|
__PUT(Heap_heap, 0, INT32);
|
||||||
Heap_firstTry = 1;
|
Heap_firstTry = 1;
|
||||||
Heap_freeList[9] = 1;
|
Heap_freeList[9] = 1;
|
||||||
Heap_lockdepth = 0;
|
|
||||||
Heap_FileCount = 0;
|
Heap_FileCount = 0;
|
||||||
Heap_modules = NIL;
|
Heap_modules = NIL;
|
||||||
Heap_heapsize = 0;
|
|
||||||
Heap_bigBlocks = 0;
|
Heap_bigBlocks = 0;
|
||||||
Heap_fin = NIL;
|
Heap_fin = NIL;
|
||||||
Heap_interrupted = 0;
|
Heap_interrupted = 0;
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. tsSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. tsSF */
|
||||||
|
|
||||||
#ifndef Heap__h
|
#ifndef Heap__h
|
||||||
#define Heap__h
|
#define Heap__h
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
||||||
|
|
||||||
#define SHORTINT INT8
|
#define SHORTINT INT8
|
||||||
#define INTEGER INT16
|
#define INTEGER INT16
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
||||||
|
|
||||||
#ifndef Modules__h
|
#ifndef Modules__h
|
||||||
#define Modules__h
|
#define Modules__h
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
||||||
|
|
||||||
#define SHORTINT INT8
|
#define SHORTINT INT8
|
||||||
#define INTEGER INT16
|
#define INTEGER INT16
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
||||||
|
|
||||||
#ifndef OPB__h
|
#ifndef OPB__h
|
||||||
#define OPB__h
|
#define OPB__h
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
||||||
|
|
||||||
#define SHORTINT INT8
|
#define SHORTINT INT8
|
||||||
#define INTEGER INT16
|
#define INTEGER INT16
|
||||||
|
|
@ -1659,9 +1659,9 @@ void OPC_CompleteIdent (OPT_Object obj)
|
||||||
OPC_Ident(obj);
|
OPC_Ident(obj);
|
||||||
OPM_WriteString((CHAR*)"__", 3);
|
OPM_WriteString((CHAR*)"__", 3);
|
||||||
} else {
|
} else {
|
||||||
OPM_WriteString((CHAR*)"((", 3);
|
OPM_WriteString((CHAR*)"(*(", 4);
|
||||||
OPC_Ident(obj->typ->strobj);
|
OPC_Ident(obj->typ->strobj);
|
||||||
OPM_Write(')');
|
OPM_WriteString((CHAR*)"*)&", 4);
|
||||||
OPC_Ident(obj);
|
OPC_Ident(obj);
|
||||||
OPM_Write(')');
|
OPM_Write(')');
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
||||||
|
|
||||||
#ifndef OPC__h
|
#ifndef OPC__h
|
||||||
#define OPC__h
|
#define OPC__h
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
||||||
|
|
||||||
#define SHORTINT INT8
|
#define SHORTINT INT8
|
||||||
#define INTEGER INT16
|
#define INTEGER INT16
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
||||||
|
|
||||||
#ifndef OPM__h
|
#ifndef OPM__h
|
||||||
#define OPM__h
|
#define OPM__h
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
||||||
|
|
||||||
#define SHORTINT INT8
|
#define SHORTINT INT8
|
||||||
#define INTEGER INT16
|
#define INTEGER INT16
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
||||||
|
|
||||||
#ifndef OPP__h
|
#ifndef OPP__h
|
||||||
#define OPP__h
|
#define OPP__h
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. tspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. tspaSF */
|
||||||
|
|
||||||
#define SHORTINT INT8
|
#define SHORTINT INT8
|
||||||
#define INTEGER INT16
|
#define INTEGER INT16
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. tspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. tspaSF */
|
||||||
|
|
||||||
#ifndef OPS__h
|
#ifndef OPS__h
|
||||||
#define OPS__h
|
#define OPS__h
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
||||||
|
|
||||||
#define SHORTINT INT8
|
#define SHORTINT INT8
|
||||||
#define INTEGER INT16
|
#define INTEGER INT16
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
||||||
|
|
||||||
#ifndef OPT__h
|
#ifndef OPT__h
|
||||||
#define OPT__h
|
#define OPT__h
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
||||||
|
|
||||||
#define SHORTINT INT8
|
#define SHORTINT INT8
|
||||||
#define INTEGER INT16
|
#define INTEGER INT16
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
||||||
|
|
||||||
#ifndef OPV__h
|
#ifndef OPV__h
|
||||||
#define OPV__h
|
#define OPV__h
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
||||||
|
|
||||||
#define SHORTINT INT8
|
#define SHORTINT INT8
|
||||||
#define INTEGER INT16
|
#define INTEGER INT16
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
||||||
|
|
||||||
#ifndef Out__h
|
#ifndef Out__h
|
||||||
#define Out__h
|
#define Out__h
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
||||||
|
|
||||||
#define SHORTINT INT8
|
#define SHORTINT INT8
|
||||||
#define INTEGER INT16
|
#define INTEGER INT16
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
||||||
|
|
||||||
#ifndef Platform__h
|
#ifndef Platform__h
|
||||||
#define Platform__h
|
#define Platform__h
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
||||||
|
|
||||||
#define SHORTINT INT8
|
#define SHORTINT INT8
|
||||||
#define INTEGER INT16
|
#define INTEGER INT16
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
||||||
|
|
||||||
#ifndef Reals__h
|
#ifndef Reals__h
|
||||||
#define Reals__h
|
#define Reals__h
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
||||||
|
|
||||||
#define SHORTINT INT8
|
#define SHORTINT INT8
|
||||||
#define INTEGER INT16
|
#define INTEGER INT16
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
||||||
|
|
||||||
#ifndef Strings__h
|
#ifndef Strings__h
|
||||||
#define Strings__h
|
#define Strings__h
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
||||||
|
|
||||||
#define SHORTINT INT8
|
#define SHORTINT INT8
|
||||||
#define INTEGER INT16
|
#define INTEGER INT16
|
||||||
|
|
@ -390,27 +390,27 @@ static void Texts_HandleAlien (Texts_Elem E, Texts_ElemMsg *msg, ADDRESS *msg__t
|
||||||
if (__IS(msg__typ, Texts_CopyMsg, 1)) {
|
if (__IS(msg__typ, Texts_CopyMsg, 1)) {
|
||||||
Texts_CopyMsg *msg__ = (void*)msg;
|
Texts_CopyMsg *msg__ = (void*)msg;
|
||||||
__NEW(e, Texts__1);
|
__NEW(e, Texts__1);
|
||||||
Texts_CopyElem((void*)((Texts_Alien)E), (void*)e);
|
Texts_CopyElem((void*)(*(Texts_Alien*)&E), (void*)e);
|
||||||
e->file = ((Texts_Alien)E)->file;
|
e->file = (*(Texts_Alien*)&E)->file;
|
||||||
e->org = ((Texts_Alien)E)->org;
|
e->org = (*(Texts_Alien*)&E)->org;
|
||||||
e->span = ((Texts_Alien)E)->span;
|
e->span = (*(Texts_Alien*)&E)->span;
|
||||||
__COPY(((Texts_Alien)E)->mod, e->mod, 32);
|
__COPY((*(Texts_Alien*)&E)->mod, e->mod, 32);
|
||||||
__COPY(((Texts_Alien)E)->proc, e->proc, 32);
|
__COPY((*(Texts_Alien*)&E)->proc, e->proc, 32);
|
||||||
(*msg__).e = (Texts_Elem)e;
|
(*msg__).e = (Texts_Elem)e;
|
||||||
} else __WITHCHK;
|
} else __WITHCHK;
|
||||||
} else if (__IS(msg__typ, Texts_IdentifyMsg, 1)) {
|
} else if (__IS(msg__typ, Texts_IdentifyMsg, 1)) {
|
||||||
if (__IS(msg__typ, Texts_IdentifyMsg, 1)) {
|
if (__IS(msg__typ, Texts_IdentifyMsg, 1)) {
|
||||||
Texts_IdentifyMsg *msg__ = (void*)msg;
|
Texts_IdentifyMsg *msg__ = (void*)msg;
|
||||||
__COPY(((Texts_Alien)E)->mod, (*msg__).mod, 32);
|
__COPY((*(Texts_Alien*)&E)->mod, (*msg__).mod, 32);
|
||||||
__COPY(((Texts_Alien)E)->proc, (*msg__).proc, 32);
|
__COPY((*(Texts_Alien*)&E)->proc, (*msg__).proc, 32);
|
||||||
(*msg__).mod[31] = 0x01;
|
(*msg__).mod[31] = 0x01;
|
||||||
} else __WITHCHK;
|
} else __WITHCHK;
|
||||||
} else if (__IS(msg__typ, Texts_FileMsg, 1)) {
|
} else if (__IS(msg__typ, Texts_FileMsg, 1)) {
|
||||||
if (__IS(msg__typ, Texts_FileMsg, 1)) {
|
if (__IS(msg__typ, Texts_FileMsg, 1)) {
|
||||||
Texts_FileMsg *msg__ = (void*)msg;
|
Texts_FileMsg *msg__ = (void*)msg;
|
||||||
if ((*msg__).id == 1) {
|
if ((*msg__).id == 1) {
|
||||||
Files_Set(&r, Files_Rider__typ, ((Texts_Alien)E)->file, ((Texts_Alien)E)->org);
|
Files_Set(&r, Files_Rider__typ, (*(Texts_Alien*)&E)->file, (*(Texts_Alien*)&E)->org);
|
||||||
i = ((Texts_Alien)E)->span;
|
i = (*(Texts_Alien*)&E)->span;
|
||||||
while (i > 0) {
|
while (i > 0) {
|
||||||
Files_Read(&r, Files_Rider__typ, (void*)&ch);
|
Files_Read(&r, Files_Rider__typ, (void*)&ch);
|
||||||
Files_Write(&(*msg__).r, Files_Rider__typ, ch);
|
Files_Write(&(*msg__).r, Files_Rider__typ, ch);
|
||||||
|
|
@ -646,7 +646,7 @@ void Texts_Read (Texts_Reader *R, ADDRESS *R__typ, CHAR *ch)
|
||||||
u = u->next;
|
u = u->next;
|
||||||
if (__ISP(u, Texts_PieceDesc, 1)) {
|
if (__ISP(u, Texts_PieceDesc, 1)) {
|
||||||
if (__ISP(u, Texts_PieceDesc, 1)) {
|
if (__ISP(u, Texts_PieceDesc, 1)) {
|
||||||
Files_Set(&(*R).rider, Files_Rider__typ, ((Texts_Piece)u)->file, ((Texts_Piece)u)->org);
|
Files_Set(&(*R).rider, Files_Rider__typ, (*(Texts_Piece*)&u)->file, (*(Texts_Piece*)&u)->org);
|
||||||
} else __WITHCHK;
|
} else __WITHCHK;
|
||||||
}
|
}
|
||||||
(*R).run = u;
|
(*R).run = u;
|
||||||
|
|
@ -673,7 +673,7 @@ void Texts_ReadElem (Texts_Reader *R, ADDRESS *R__typ)
|
||||||
(*R).elem = __GUARDP(u, Texts_ElemDesc, 1);
|
(*R).elem = __GUARDP(u, Texts_ElemDesc, 1);
|
||||||
if (__ISP(un, Texts_PieceDesc, 1)) {
|
if (__ISP(un, Texts_PieceDesc, 1)) {
|
||||||
if (__ISP(un, Texts_PieceDesc, 1)) {
|
if (__ISP(un, Texts_PieceDesc, 1)) {
|
||||||
Files_Set(&(*R).rider, Files_Rider__typ, ((Texts_Piece)un)->file, ((Texts_Piece)un)->org);
|
Files_Set(&(*R).rider, Files_Rider__typ, (*(Texts_Piece*)&un)->file, (*(Texts_Piece*)&un)->org);
|
||||||
} else __WITHCHK;
|
} else __WITHCHK;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
|
|
@ -1715,9 +1715,9 @@ void Texts_Store (Files_Rider *r, ADDRESS *r__typ, Texts_Text T)
|
||||||
while (u != T->head) {
|
while (u != T->head) {
|
||||||
if (__ISP(u, Texts_PieceDesc, 1)) {
|
if (__ISP(u, Texts_PieceDesc, 1)) {
|
||||||
if (__ISP(u, Texts_PieceDesc, 1)) {
|
if (__ISP(u, Texts_PieceDesc, 1)) {
|
||||||
if (((Texts_Piece)u)->ascii) {
|
if ((*(Texts_Piece*)&u)->ascii) {
|
||||||
Files_Set(&r1, Files_Rider__typ, ((Texts_Piece)u)->file, ((Texts_Piece)u)->org);
|
Files_Set(&r1, Files_Rider__typ, (*(Texts_Piece*)&u)->file, (*(Texts_Piece*)&u)->org);
|
||||||
delta = ((Texts_Piece)u)->len;
|
delta = (*(Texts_Piece*)&u)->len;
|
||||||
while (delta > 0) {
|
while (delta > 0) {
|
||||||
Files_Read(&r1, Files_Rider__typ, (void*)&ch);
|
Files_Read(&r1, Files_Rider__typ, (void*)&ch);
|
||||||
delta -= 1;
|
delta -= 1;
|
||||||
|
|
@ -1728,8 +1728,8 @@ void Texts_Store (Files_Rider *r, ADDRESS *r__typ, Texts_Text T)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
Files_Set(&r1, Files_Rider__typ, ((Texts_Piece)u)->file, ((Texts_Piece)u)->org);
|
Files_Set(&r1, Files_Rider__typ, (*(Texts_Piece*)&u)->file, (*(Texts_Piece*)&u)->org);
|
||||||
delta = ((Texts_Piece)u)->len;
|
delta = (*(Texts_Piece*)&u)->len;
|
||||||
while (delta > 1024) {
|
while (delta > 1024) {
|
||||||
Files_ReadBytes(&r1, Files_Rider__typ, (void*)block, 1024, 1024);
|
Files_ReadBytes(&r1, Files_Rider__typ, (void*)block, 1024, 1024);
|
||||||
Files_WriteBytes(&msg.r, Files_Rider__typ, (void*)block, 1024, 1024);
|
Files_WriteBytes(&msg.r, Files_Rider__typ, (void*)block, 1024, 1024);
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
||||||
|
|
||||||
#ifndef Texts__h
|
#ifndef Texts__h
|
||||||
#define Texts__h
|
#define Texts__h
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
||||||
|
|
||||||
#define SHORTINT INT8
|
#define SHORTINT INT8
|
||||||
#define INTEGER INT16
|
#define INTEGER INT16
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
||||||
|
|
||||||
#ifndef VT100__h
|
#ifndef VT100__h
|
||||||
#define VT100__h
|
#define VT100__h
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
||||||
|
|
||||||
#define SHORTINT INT8
|
#define SHORTINT INT8
|
||||||
#define INTEGER INT16
|
#define INTEGER INT16
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
||||||
|
|
||||||
#ifndef extTools__h
|
#ifndef extTools__h
|
||||||
#define extTools__h
|
#define extTools__h
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspamS */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspamS */
|
||||||
|
|
||||||
#define SHORTINT INT8
|
#define SHORTINT INT8
|
||||||
#define INTEGER INT16
|
#define INTEGER INT16
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
||||||
|
|
||||||
#define SHORTINT INT8
|
#define SHORTINT INT8
|
||||||
#define INTEGER INT16
|
#define INTEGER INT16
|
||||||
|
|
@ -19,6 +19,6 @@ export void *Configuration__init(void)
|
||||||
__DEFMOD;
|
__DEFMOD;
|
||||||
__REGMOD("Configuration", 0);
|
__REGMOD("Configuration", 0);
|
||||||
/* BEGIN */
|
/* BEGIN */
|
||||||
__MOVE("2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8.", Configuration_versionLong, 75);
|
__MOVE("2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8.", Configuration_versionLong, 75);
|
||||||
__ENDMOD;
|
__ENDMOD;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
||||||
|
|
||||||
#ifndef Configuration__h
|
#ifndef Configuration__h
|
||||||
#define Configuration__h
|
#define Configuration__h
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. tspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. tspaSF */
|
||||||
|
|
||||||
#define SHORTINT INT8
|
#define SHORTINT INT8
|
||||||
#define INTEGER INT16
|
#define INTEGER INT16
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. tspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. tspaSF */
|
||||||
|
|
||||||
#ifndef Files__h
|
#ifndef Files__h
|
||||||
#define Files__h
|
#define Files__h
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. tsSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. tsSF */
|
||||||
|
|
||||||
#define SHORTINT INT8
|
#define SHORTINT INT8
|
||||||
#define INTEGER INT16
|
#define INTEGER INT16
|
||||||
|
|
@ -68,7 +68,7 @@ static INT64 Heap_freeList[10];
|
||||||
static INT64 Heap_bigBlocks;
|
static INT64 Heap_bigBlocks;
|
||||||
export INT64 Heap_allocated;
|
export INT64 Heap_allocated;
|
||||||
static BOOLEAN Heap_firstTry;
|
static BOOLEAN Heap_firstTry;
|
||||||
static INT64 Heap_heap, Heap_heapend;
|
static INT64 Heap_heap, Heap_heapNegMin, Heap_heapNegMax, Heap_heapPosMin, Heap_heapPosMax;
|
||||||
export INT64 Heap_heapsize;
|
export INT64 Heap_heapsize;
|
||||||
static Heap_FinNode Heap_fin;
|
static Heap_FinNode Heap_fin;
|
||||||
static INT16 Heap_lockdepth;
|
static INT16 Heap_lockdepth;
|
||||||
|
|
@ -170,16 +170,33 @@ void Heap_INCREF (Heap_Module m)
|
||||||
|
|
||||||
static INT64 Heap_NewChunk (INT64 blksz)
|
static INT64 Heap_NewChunk (INT64 blksz)
|
||||||
{
|
{
|
||||||
INT64 chnk;
|
INT64 chnk, blk, end;
|
||||||
chnk = Heap_OSAllocate(blksz + 24);
|
chnk = Heap_OSAllocate(blksz + 24);
|
||||||
if (chnk != 0) {
|
if (chnk != 0) {
|
||||||
__PUT(chnk + 8, chnk + (24 + blksz), INT64);
|
blk = chnk + 24;
|
||||||
__PUT(chnk + 24, chnk + 32, INT64);
|
end = blk + blksz;
|
||||||
__PUT(chnk + 32, blksz, INT64);
|
__PUT(chnk + 8, end, INT64);
|
||||||
__PUT(chnk + 40, -8, INT64);
|
__PUT(blk, blk + 8, INT64);
|
||||||
__PUT(chnk + 48, Heap_bigBlocks, INT64);
|
__PUT(blk + 8, blksz, INT64);
|
||||||
Heap_bigBlocks = chnk + 24;
|
__PUT(blk + 16, -8, INT64);
|
||||||
|
__PUT(blk + 24, Heap_bigBlocks, INT64);
|
||||||
|
Heap_bigBlocks = blk;
|
||||||
Heap_heapsize += blksz;
|
Heap_heapsize += blksz;
|
||||||
|
if (chnk > 0) {
|
||||||
|
if (chnk < Heap_heapPosMin) {
|
||||||
|
Heap_heapPosMin = blk + 8;
|
||||||
|
}
|
||||||
|
if (end > Heap_heapPosMax) {
|
||||||
|
Heap_heapPosMax = end;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
if (chnk < Heap_heapNegMin) {
|
||||||
|
Heap_heapNegMin = blk + 8;
|
||||||
|
}
|
||||||
|
if (end > Heap_heapNegMax) {
|
||||||
|
Heap_heapNegMax = end;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
return chnk;
|
return chnk;
|
||||||
}
|
}
|
||||||
|
|
@ -207,9 +224,6 @@ static void Heap_ExtendHeap (INT64 blksz)
|
||||||
__PUT(chnk, next, INT64);
|
__PUT(chnk, next, INT64);
|
||||||
__PUT(j, chnk, INT64);
|
__PUT(j, chnk, INT64);
|
||||||
}
|
}
|
||||||
if (next == 0) {
|
|
||||||
__GET(chnk + 8, Heap_heapend, INT64);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -592,7 +606,7 @@ static void Heap_MarkStack (INT64 n, INT64 *cand, ADDRESS cand__len)
|
||||||
}
|
}
|
||||||
while (sp != stack0) {
|
while (sp != stack0) {
|
||||||
__GET(sp, p, INT64);
|
__GET(sp, p, INT64);
|
||||||
if ((p > Heap_heap && p < Heap_heapend)) {
|
if ((((p > 0 && p >= Heap_heapPosMin)) && p < Heap_heapPosMax) || (((p < 0 && p >= Heap_heapNegMin)) && p < Heap_heapNegMax)) {
|
||||||
if (nofcand == (INT64)cand__len) {
|
if (nofcand == (INT64)cand__len) {
|
||||||
Heap_HeapSort(nofcand, (void*)cand, cand__len);
|
Heap_HeapSort(nofcand, (void*)cand, cand__len);
|
||||||
Heap_MarkCandidates(nofcand, (void*)cand, cand__len);
|
Heap_MarkCandidates(nofcand, (void*)cand, cand__len);
|
||||||
|
|
@ -703,16 +717,20 @@ void Heap_RegisterFinalizer (SYSTEM_PTR obj, Heap_Finalizer finalize)
|
||||||
|
|
||||||
void Heap_InitHeap (void)
|
void Heap_InitHeap (void)
|
||||||
{
|
{
|
||||||
Heap_heap = Heap_NewChunk(256000);
|
Heap_heap = 0;
|
||||||
__GET(Heap_heap + 8, Heap_heapend, INT64);
|
Heap_heapsize = 0;
|
||||||
__PUT(Heap_heap, 0, INT64);
|
|
||||||
Heap_allocated = 0;
|
Heap_allocated = 0;
|
||||||
|
Heap_lockdepth = 0;
|
||||||
|
Heap_heapPosMin = 9223372036854775807;
|
||||||
|
Heap_heapPosMax = 0;
|
||||||
|
Heap_heapNegMin = 0;
|
||||||
|
Heap_heapNegMax = (-9223372036854775807-1);
|
||||||
|
Heap_heap = Heap_NewChunk(256000);
|
||||||
|
__PUT(Heap_heap, 0, INT64);
|
||||||
Heap_firstTry = 1;
|
Heap_firstTry = 1;
|
||||||
Heap_freeList[9] = 1;
|
Heap_freeList[9] = 1;
|
||||||
Heap_lockdepth = 0;
|
|
||||||
Heap_FileCount = 0;
|
Heap_FileCount = 0;
|
||||||
Heap_modules = NIL;
|
Heap_modules = NIL;
|
||||||
Heap_heapsize = 0;
|
|
||||||
Heap_bigBlocks = 0;
|
Heap_bigBlocks = 0;
|
||||||
Heap_fin = NIL;
|
Heap_fin = NIL;
|
||||||
Heap_interrupted = 0;
|
Heap_interrupted = 0;
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. tsSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. tsSF */
|
||||||
|
|
||||||
#ifndef Heap__h
|
#ifndef Heap__h
|
||||||
#define Heap__h
|
#define Heap__h
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
||||||
|
|
||||||
#define SHORTINT INT8
|
#define SHORTINT INT8
|
||||||
#define INTEGER INT16
|
#define INTEGER INT16
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
||||||
|
|
||||||
#ifndef Modules__h
|
#ifndef Modules__h
|
||||||
#define Modules__h
|
#define Modules__h
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
||||||
|
|
||||||
#define SHORTINT INT8
|
#define SHORTINT INT8
|
||||||
#define INTEGER INT16
|
#define INTEGER INT16
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
||||||
|
|
||||||
#ifndef OPB__h
|
#ifndef OPB__h
|
||||||
#define OPB__h
|
#define OPB__h
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
||||||
|
|
||||||
#define SHORTINT INT8
|
#define SHORTINT INT8
|
||||||
#define INTEGER INT16
|
#define INTEGER INT16
|
||||||
|
|
@ -1659,9 +1659,9 @@ void OPC_CompleteIdent (OPT_Object obj)
|
||||||
OPC_Ident(obj);
|
OPC_Ident(obj);
|
||||||
OPM_WriteString((CHAR*)"__", 3);
|
OPM_WriteString((CHAR*)"__", 3);
|
||||||
} else {
|
} else {
|
||||||
OPM_WriteString((CHAR*)"((", 3);
|
OPM_WriteString((CHAR*)"(*(", 4);
|
||||||
OPC_Ident(obj->typ->strobj);
|
OPC_Ident(obj->typ->strobj);
|
||||||
OPM_Write(')');
|
OPM_WriteString((CHAR*)"*)&", 4);
|
||||||
OPC_Ident(obj);
|
OPC_Ident(obj);
|
||||||
OPM_Write(')');
|
OPM_Write(')');
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
||||||
|
|
||||||
#ifndef OPC__h
|
#ifndef OPC__h
|
||||||
#define OPC__h
|
#define OPC__h
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
||||||
|
|
||||||
#define SHORTINT INT8
|
#define SHORTINT INT8
|
||||||
#define INTEGER INT16
|
#define INTEGER INT16
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
||||||
|
|
||||||
#ifndef OPM__h
|
#ifndef OPM__h
|
||||||
#define OPM__h
|
#define OPM__h
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
||||||
|
|
||||||
#define SHORTINT INT8
|
#define SHORTINT INT8
|
||||||
#define INTEGER INT16
|
#define INTEGER INT16
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
||||||
|
|
||||||
#ifndef OPP__h
|
#ifndef OPP__h
|
||||||
#define OPP__h
|
#define OPP__h
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. tspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. tspaSF */
|
||||||
|
|
||||||
#define SHORTINT INT8
|
#define SHORTINT INT8
|
||||||
#define INTEGER INT16
|
#define INTEGER INT16
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. tspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. tspaSF */
|
||||||
|
|
||||||
#ifndef OPS__h
|
#ifndef OPS__h
|
||||||
#define OPS__h
|
#define OPS__h
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
||||||
|
|
||||||
#define SHORTINT INT8
|
#define SHORTINT INT8
|
||||||
#define INTEGER INT16
|
#define INTEGER INT16
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
||||||
|
|
||||||
#ifndef OPT__h
|
#ifndef OPT__h
|
||||||
#define OPT__h
|
#define OPT__h
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
||||||
|
|
||||||
#define SHORTINT INT8
|
#define SHORTINT INT8
|
||||||
#define INTEGER INT16
|
#define INTEGER INT16
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
||||||
|
|
||||||
#ifndef OPV__h
|
#ifndef OPV__h
|
||||||
#define OPV__h
|
#define OPV__h
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
||||||
|
|
||||||
#define SHORTINT INT8
|
#define SHORTINT INT8
|
||||||
#define INTEGER INT16
|
#define INTEGER INT16
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* voc 2.00 [2016/11/27]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
/* voc 2.00 [2016/11/28]. Bootstrapping compiler for address size 8, alignment 8. xtspaSF */
|
||||||
|
|
||||||
#ifndef Out__h
|
#ifndef Out__h
|
||||||
#define Out__h
|
#define Out__h
|
||||||
|
|
|
||||||
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Add a link
Reference in a new issue