2
0
Эх сурвалжийг харах

Remove Paranoid Flag (should be enabled when GC related problems occur)

git-svn-id: https://svn.inf.ethz.ch/svn/lecturers/a2/trunk@7177 8c9fc860-2736-0410-a75d-ab315db34111
felixf 8 жил өмнө
parent
commit
81b7ea4baf
1 өөрчлөгдсөн 6 нэмэгдсэн , 2 устгасан
  1. 6 2
      source/Heaps.Mod

+ 6 - 2
source/Heaps.Mod

@@ -13,8 +13,8 @@ MODULE Heaps;	(** AUTHOR "pjm/Luc Bläser/U. Glavitsch (ug)"; PURPOSE "Heap mana
 IMPORT SYSTEM, Trace, Machine;
 
 CONST
-	Paranoid = TRUE; (* if paranoid =true, then during mark phase the GC can accept spurious pointers but reports them
-									paranoid = false enforces correct metadata and correct settings of untraced variables
+	Paranoid = FALSE; (* if paranoid =true, then during mark phase the GC can accept spurious pointers but reports them
+									paranoid = false expects correct metadata and correct settings of untraced variables
 									moreover, it should improve GC mark speed *)
 
 	DebugValue = LONGINT(0DEADDEADH);	(* set non-0 to clear free storage to this value *)
@@ -257,10 +257,14 @@ BEGIN
 			tdAdr := block.typeBlock;
 			IF (tdAdr = systemBlockTag) OR (tdAdr = recordBlockTag) OR (tdAdr = protRecBlockTag) OR (tdAdr = arrayBlockTag) THEN
 				RETURN TRUE;
+			ELSE HALT(103);
 			END
+		ELSE HALT(102);
 		END
+	ELSE HALT(101);
 	END;
 	Trace.String("Heaps: invalid pointer encountered: "); Trace.Address(p); Trace.String(","); Trace.Address(block); Trace.Ln;
+	HALT(100);
 	RETURN FALSE
 END CheckPointer;