summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAdam Sandberg Ericsson <adam@sandbergericsson.se>2022-04-09 07:58:08 +0100
committerAdam Sandberg Ericsson <adam@sandbergericsson.se>2022-04-09 07:59:24 +0100
commit299cbd78074588d7ca9b0db4232e9ad4e73577ce (patch)
tree406cda28ac5ac7a0e3b93981f52a5d09db11ee43
parente58d5eeb90fb0c35ff08d8d9f752eab74fc9889e (diff)
downloadhaskell-wip/adamse/gc-docs.tar.gz
rts: state explicitly what evacuate and scavange mean in the copying gcwip/adamse/gc-docs
-rw-r--r--rts/sm/Evac.c6
-rw-r--r--rts/sm/Scav.c4
2 files changed, 9 insertions, 1 deletions
diff --git a/rts/sm/Evac.c b/rts/sm/Evac.c
index 834df459b4..816b5deba3 100644
--- a/rts/sm/Evac.c
+++ b/rts/sm/Evac.c
@@ -4,6 +4,9 @@
*
* Generational garbage collector: evacuation functions
*
+ * Evacuating is copying (live) objects from a source generation to the target
+ * generation.
+ *
* Documentation on the architecture of the Garbage Collector can be
* found in the online commentary:
*
@@ -633,7 +636,8 @@ evacuate_compact (StgPtr p)
/* ----------------------------------------------------------------------------
Evacuate
- This is called (eventually) for every live object in the system.
+ Copies an object from its current generation to a target generation. This is
+ called (eventually) for every live object in the system.
The caller to evacuate specifies a desired generation in the
gct->evac_gen thread-local variable. The following conditions apply to
diff --git a/rts/sm/Scav.c b/rts/sm/Scav.c
index 69ccea7bc3..3ebcc22d44 100644
--- a/rts/sm/Scav.c
+++ b/rts/sm/Scav.c
@@ -4,6 +4,10 @@
*
* Generational garbage collector: scavenging functions
*
+ * Scavenging means reading already copied (evacuated) objects and evactuating
+ * any pointers the object holds and updating the pointers to their new
+ * locations.
+ *
* Documentation on the architecture of the Garbage Collector can be
* found in the online commentary:
*