Browse Source

Use proper maximum size

git-svn-id: https://svn.inf.ethz.ch/svn/lecturers/a2/trunk@7735 8c9fc860-2736-0410-a75d-ab315db34111
eth.negelef 7 years ago
parent
commit
fa2f520344
1 changed files with 8 additions and 8 deletions
  1. 8 8
      source/Heaps.Mod

+ 8 - 8
source/Heaps.Mod

@@ -667,13 +667,13 @@ BEGIN
 		IF sweepMarkValue < currentMarkValue THEN
 		IF sweepMarkValue < currentMarkValue THEN
 			(*Trace.String("clear free lists and lazy sweep"); Trace.Ln;*)
 			(*Trace.String("clear free lists and lazy sweep"); Trace.Ln;*)
 			ClearFreeLists;
 			ClearFreeLists;
-			LazySweep(MAX(LONGINT), p)
+			LazySweep(MAX(SIZE), p)
 		END;
 		END;
 		p := GetFreeBlockAndSplit(size)
 		p := GetFreeBlockAndSplit(size)
 	ELSE
 	ELSE
 		LazySweep(size, p)
 		LazySweep(size, p)
 	END;
 	END;
-	IF size # MAX(LONGINT) THEN
+	IF size # MAX(SIZE) THEN
 	INC(throughput, size);
 	INC(throughput, size);
 	END;
 	END;
 END GetFreeBlock;
 END GetFreeBlock;
@@ -691,7 +691,7 @@ CONST StrongChecks = FALSE;
 BEGIN{UNCHECKED}
 BEGIN{UNCHECKED}
 	INC(NgcSweeps);
 	INC(NgcSweeps);
 	time1 := Machine.GetTimer();
 	time1 := Machine.GetTimer();
-	ASSERT(~EnableFreeLists OR (size = MAX(LONGINT)));
+	ASSERT(~EnableFreeLists OR (size = MAX(SIZE)));
 	lastFreeBlockAdr := NilVal;
 	lastFreeBlockAdr := NilVal;
 	lastFreeBlock := NIL;
 	lastFreeBlock := NIL;
 	IF (sweepMemBlock = NIL) (* OR (sweepMarkValue < currentMarkValue)*) THEN (* restart lazy sweep including clearance of lists *)
 	IF (sweepMemBlock = NIL) (* OR (sweepMarkValue < currentMarkValue)*) THEN (* restart lazy sweep including clearance of lists *)
@@ -1140,7 +1140,7 @@ BEGIN
 		(* TRACE(LONGINT((time2-time1) DIV (1024*1024))); *)
 		(* TRACE(LONGINT((time2-time1) DIV (1024*1024))); *)
 	END;
 	END;
 
 
-	IF EnableFreeLists THEN GetFreeBlock(MAX(LONGINT), f) END;
+	IF EnableFreeLists THEN GetFreeBlock(MAX(SIZE), f) END;
 
 
 END CollectGarbage;
 END CollectGarbage;
 
 
@@ -1153,7 +1153,7 @@ END InvokeGC;
 PROCEDURE ReturnBlocks;
 PROCEDURE ReturnBlocks;
 VAR memBlock {UNTRACED}, free{UNTRACED}: Machine.MemoryBlock; p: ADDRESS; heapBlock {UNTRACED}: HeapBlock; f: FreeBlock;
 VAR memBlock {UNTRACED}, free{UNTRACED}: Machine.MemoryBlock; p: ADDRESS; heapBlock {UNTRACED}: HeapBlock; f: FreeBlock;
 BEGIN
 BEGIN
-	GetFreeBlock(MAX(LONGINT), f);
+	GetFreeBlock(MAX(SIZE), f);
 	memBlock := Machine.memBlockHead;
 	memBlock := Machine.memBlockHead;
 	WHILE memBlock # NIL DO
 	WHILE memBlock # NIL DO
 		free := NIL;
 		free := NIL;
@@ -1178,7 +1178,7 @@ END ReturnBlocks;
 PROCEDURE FullSweep*;
 PROCEDURE FullSweep*;
 VAR p {UNTRACED}: FreeBlock;
 VAR p {UNTRACED}: FreeBlock;
 BEGIN
 BEGIN
-	GetFreeBlock(MAX(LONGINT), p);
+	GetFreeBlock(MAX(SIZE), p);
 END FullSweep;
 END FullSweep;
 
 
 PROCEDURE LazySweepGC*;
 PROCEDURE LazySweepGC*;
@@ -1188,8 +1188,8 @@ BEGIN
 	GC;
 	GC;
 	(* return blocks now *)
 	(* return blocks now *)
 	Machine.Acquire(Machine.Heaps);
 	Machine.Acquire(Machine.Heaps);
-	(* trying to satisfy a request of MAX(LONGINT) bytes will never succeed - lazy sweep runs until end of heap *)
-	GetFreeBlock(MAX(LONGINT), p);
+	(* trying to satisfy a request of MAX(SIZE) bytes will never succeed - lazy sweep runs until end of heap *)
+	GetFreeBlock(MAX(SIZE), p);
 	IF EnableReturnBlocks THEN ReturnBlocks END;
 	IF EnableReturnBlocks THEN ReturnBlocks END;
 	Machine.Release(Machine.Heaps);
 	Machine.Release(Machine.Heaps);
 END LazySweepGC;
 END LazySweepGC;