Commit 2168fdb
committed
Move class pre-aging out of the allocation path
Previously classes and modules were pre-aged. Ie. as soon as they're
allocated they are aged to old_age - 1. This was done with the
assumption that classes are generally always long lived, so we should
assume that any that survive a single GC can be considered old.
This commit keeps the same semantics, but moves the logic out of the
allocation path, in order to simplify allocation. Classes and modules
are now set to old-age the first time they are marked.1 parent b52cb82 commit 2168fdb
1 file changed
Lines changed: 10 additions & 6 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2175 | 2175 | | |
2176 | 2176 | | |
2177 | 2177 | | |
2178 | | - | |
2179 | | - | |
2180 | | - | |
2181 | | - | |
2182 | 2178 | | |
2183 | 2179 | | |
2184 | 2180 | | |
| |||
4407 | 4403 | | |
4408 | 4404 | | |
4409 | 4405 | | |
4410 | | - | |
4411 | | - | |
| 4406 | + | |
| 4407 | + | |
| 4408 | + | |
| 4409 | + | |
| 4410 | + | |
| 4411 | + | |
| 4412 | + | |
| 4413 | + | |
| 4414 | + | |
| 4415 | + | |
4412 | 4416 | | |
4413 | 4417 | | |
4414 | 4418 | | |
| |||
0 commit comments