We should have the same mechanism to DOMConstructors: DOMStructures array. Now, we have significantly better / faster StructureID implementation. And WriteBarrierStructureID (sizeof(WriteBarrierStructureID) is 4!) is coming. We should have std::array<WriteBarrierStructureID, numberOfStructures> instead of HashMap<ClassInfo*, WriteBarrier<Structure>>, which is faster. And maybe it is more compact (HashMap allocates roughly 4x memory usually, we do not need to have ClassInfo*, and we do not need to hold Structure*).
<rdar://problem/86496457>
Created attachment 452945 [details] WIP
Created attachment 452949 [details] WIP
Created attachment 452951 [details] WIP
Created attachment 452952 [details] WIP
Pull request: https://github.com/WebKit/WebKit/pull/26381