mirror of
https://github.com/mozilla/gecko-dev.git
synced 2025-02-24 19:37:15 +00:00

It is possible in several places to have unconstrained client objects as the key of a HashMap/HashSet. For generational and compacting GC, we will need to move these objects in memory. This means we will need to remove and re-insert these keys in a new location, during GC. Because we cannot safely allocate memory for this, we need a specialized algorithm inside the HashTable itself.