Ben Gamari pushed to branch wip/T26009 at Glasgow Haskell Compiler / GHC
Commits:
-
9631a12c
by Ben Gamari at 2025-05-22T17:24:03-04:00
1 changed file:
Changes:
... | ... | @@ -8,9 +8,16 @@ |
8 | 8 | |
9 | 9 | |
10 | 10 | /*
|
11 | - * Sanity checking. For each ObjectCode, maintain a list of address ranges
|
|
12 | - * which may be prodded during relocation, and abort if we try and write
|
|
13 | - * outside any of these.
|
|
11 | + * Note [Proddable blocks]
|
|
12 | + * ~~~~~~~~~~~~~~~~~~~~~~~
|
|
13 | + * For each ObjectCode, we maintain a ProddableBlockSet representing the set of
|
|
14 | + * address ranges containing data belonging to the object. This set is
|
|
15 | + * represented here as an array of intervals sorted by start address. This
|
|
16 | + * allows us to efficiently query and insert via binary search. Array resizing
|
|
17 | + * is done according to an exponential growth schedule.
|
|
18 | + *
|
|
19 | + * While performing relocations we check against this set and and abort if we
|
|
20 | + * try and write outside any of these.
|
|
14 | 21 | */
|
15 | 22 | |
16 | 23 | #include "Rts.h"
|