diff options
| -rw-r--r-- | etc/DEBUG | 11 |
1 files changed, 7 insertions, 4 deletions
| @@ -410,10 +410,13 @@ on the respective headers to remove the `:N' bitfield definitions | |||
| 410 | 410 | ||
| 411 | ** Debugging problems which happen in GC | 411 | ** Debugging problems which happen in GC |
| 412 | 412 | ||
| 413 | The array `last_marked' (defined on alloc.c) can be used to display | 413 | The array `last_marked' (defined on alloc.c) can be used to display up |
| 414 | up to 500 last objects marked by the garbage collection process. The | 414 | to 500 last objects marked by the garbage collection process. |
| 415 | variable `last_marked_index' holds the index into the `last_marked' | 415 | Whenever a Lisp object is marked by the garbage collector, it records |
| 416 | array one place beyond where the very last marked object is stored. | 416 | the pointer to that object in the `last_marked' array. The variable |
| 417 | `last_marked_index' holds the index into the `last_marked' array one | ||
| 418 | place beyond where the pointer to the very last marked object is | ||
| 419 | stored. | ||
| 417 | 420 | ||
| 418 | The single most important goal in debugging GC problems is to find the | 421 | The single most important goal in debugging GC problems is to find the |
| 419 | Lisp data structure that got corrupted. This is not easy since GC | 422 | Lisp data structure that got corrupted. This is not easy since GC |