It's called from exactly one place (Traits::destroyInstance), and that one place already (of necessity) has the intimate knowledge about the layout of ScriptObject and Dictionary. We should collapse it all into Traits::destroyInstance.
Update: I was looking at an older branch, and hadn't realized it's also called from ScriptObject::gcTrace. That said: (1) I still think it should be nuked (and inlined) (2) the entire approach we're using for hashtables in SO-vs-Dict is an abomination and needs to be reworked; checking "isDictionary" each time we get the table is stupid and wasteful.
I'm going to withdraw this bug because a proper fix turns out to be a giant rathole.
Status: NEW → RESOLVED
Last Resolved: 7 years ago
Resolution: --- → WONTFIX
You need to log in before you can comment on or make changes to this bug.