Commit 46ea21e
committed
ZJIT: Remove from
Previously, we kept around `PatchPoint`s after patching them for several
kinds of invariants. That wasted compute since repeated invalidation
with the same key patched a growing list of patchpoints each time,
making it accidentally O(n^2). Retaining the patchpoints also used memory.
Some invariants, such as rb_zjit_invalidate_no_singleton_class() and
rb_zjit_invalidate_root_box(), already remove from the table. This commit
makes all invariants remove from the table.Invariants on invalidation1 parent b6e4fa7 commit 46ea21e
1 file changed
Lines changed: 2 additions & 2 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
188 | 188 | | |
189 | 189 | | |
190 | 190 | | |
191 | | - | |
| 191 | + | |
192 | 192 | | |
193 | 193 | | |
194 | 194 | | |
| |||
372 | 372 | | |
373 | 373 | | |
374 | 374 | | |
375 | | - | |
| 375 | + | |
376 | 376 | | |
377 | 377 | | |
378 | 378 | | |
| |||
0 commit comments