ObjMem.st
changeset 375 e5019c22f40e
parent 370 20f04d9b371b
child 379 5b5a130ccd09
--- a/ObjMem.st	Sat Aug 05 16:05:36 1995 +0200
+++ b/ObjMem.st	Tue Aug 08 02:49:43 1995 +0200
@@ -34,7 +34,7 @@
 COPYRIGHT (c) 1992 by Claus Gittinger
 	     All Rights Reserved
 
-$Header: /cvs/stx/stx/libbasic/Attic/ObjMem.st,v 1.48 1995-08-03 01:15:54 claus Exp $
+$Header: /cvs/stx/stx/libbasic/Attic/ObjMem.st,v 1.49 1995-08-08 00:47:48 claus Exp $
 '!
 
 !ObjectMemory class methodsFor:'documentation'!
@@ -55,7 +55,7 @@
 
 version
 "
-$Header: /cvs/stx/stx/libbasic/Attic/ObjMem.st,v 1.48 1995-08-03 01:15:54 claus Exp $
+$Header: /cvs/stx/stx/libbasic/Attic/ObjMem.st,v 1.49 1995-08-08 00:47:48 claus Exp $
 "
 !
 
@@ -457,6 +457,59 @@
     ^ LowSpaceSemaphore
 ! !
 
+!ObjectMemory class methodsFor:'VM messages'!
+
+infoPrinting:aBoolean
+    "turn on/off various informational printouts in the VM.
+     For example, the GC activity messages are controlled by
+     this flags setting.
+     The default is true, since (currently) those messages
+     are useful for ST/X developers."
+
+%{  /* NOCONTEXT */
+    extern int __infoPrinting;
+
+    __infoPrinting = (aBoolean == true);
+%}
+!
+
+infoPrinting
+    "return true, if various informational printouts in the VM
+     are turned on, false of off."
+
+%{  /* NOCONTEXT */
+    extern int __infoPrinting;
+
+    RETURN (__infoPrinting ? true : false);
+%}
+!
+
+debugPrinting:aBoolean
+    "turn on/off various debug printouts in the VM
+     in case of an error. For example, a double-notUnderstood
+     leads to a VM context dump if debugPrinting is on.
+     If off, those messages are suppressed.
+     The default is on, since these messages are only printed for
+     severe errors."
+
+%{  /* NOCONTEXT */
+    extern int __debugPrinting;
+
+    __debugPrinting = (aBoolean == true);
+%}
+!
+
+debugPrinting
+    "return true, if various debug printouts in the VM
+     are turned on, false of off."
+
+%{  /* NOCONTEXT */
+    extern int __debugPrinting;
+
+    RETURN (__debugPrinting ? true : false);
+%}
+! !
+
 !ObjectMemory class methodsFor:'dependents access'!
 
 dependents
@@ -1459,6 +1512,21 @@
 !
 
 garbageCollect
+    "search for and free garbage in the oldSpace.
+     This can take a long time - especially, if paging is involved."
+
+    "/ used to be 
+    "/    self compressingGarbageCollect 
+    "/ here; changed to default to markAndSweep
+
+    self markAndSweep
+
+    "
+     ObjectMemory garbageCollect
+    "
+!
+
+compressingGarbageCollect
     "search for and free garbage in the oldSpace (newSpace is cleaned automatically) 
      performing a COMPRESSING garbage collect.
      This can take a long time - especially, if paging is involved
@@ -1472,21 +1540,7 @@
 %}
 
     "
-     ObjectMemory garbageCollect
-    "
-!
-
-reclaimSymbols
-    "reclaim unused symbols;
-     Unused symbols are (currently) not reclaimed automatically,
-     but only upon request with this method. 
-     It takes some time to do this ... and it is NOT interruptable.
-     Future versions may do this automatically, while garbage collecting."
-%{
-    __reclaimSymbols(__context);
-%}
-    "
-     ObjectMemory reclaimSymbols
+     ObjectMemory compressingGarbageCollect
     "
 !
 
@@ -1505,6 +1559,20 @@
     "
 !
 
+reclaimSymbols
+    "reclaim unused symbols;
+     Unused symbols are (currently) not reclaimed automatically,
+     but only upon request with this method. 
+     It takes some time to do this ... and it is NOT interruptable.
+     Future versions may do this automatically, while garbage collecting."
+%{
+    __reclaimSymbols(__context);
+%}
+    "
+     ObjectMemory reclaimSymbols
+    "
+!
+
 gcStep
     "one incremental garbage collect step.
      Mark or sweep some small number of objects. This
@@ -1571,13 +1639,13 @@
 !
 
 verboseGarbageCollect
-    "perform a compessing garbage collect and show some informational
+    "perform a compressing garbage collect and show some informational
      output on the Transcript"
 
     |nBytesBefore nReclaimed value unit|
 
     nBytesBefore := self oldSpaceUsed.
-    self garbageCollect.
+    self compressingGarbageCollect.
     nReclaimed := nBytesBefore - self oldSpaceUsed.
     nReclaimed > 0 ifTrue:[
 	nReclaimed > 1024 ifTrue:[
@@ -2651,4 +2719,3 @@
 compactingGC
     self garbageCollect
 ! !
-