fune/js
Lars T Hansen 0f148be810 Bug 1750930 - Make the indirect stub table two-level. r=yury
For large applications with multiple threads and large tables of
indirect functions and tiered compilation, the shared (per-module)
indirect stubs set can easily reach one million entries.  However the
insert-one-at-a-time strategy for this set uses linear time, so
merging a new set of stubs into the set will tend to take quadratic
time.  Furthermore, a lock is held by each thread during this slow
process, serializing all the threads.  The result can be very slow
application startup.

As a stopgap (because we may remove the indirect stubs and don't need
to commit to a complex solution right now), we break the indirect
stubs set it into per-tls sets to avoid the very long insertion times
resulting from having one shared set per module.  Set merging remains
quadratic but the since the sets are much smaller it matters much
less.

A followup bug will be filed for a better, permanent solution, should
we need it.

Differential Revision: https://phabricator.services.mozilla.com/D136470
2022-01-21 15:37:21 +00:00
..
ductwork/debugger
examples Backed out 10 changesets (bug 1746090) for causing failures in HeapSnapshot.cpp CLOSED TREE 2022-01-21 02:58:48 +02:00
public Backed out 10 changesets (bug 1746090) for causing failures in HeapSnapshot.cpp CLOSED TREE 2022-01-21 02:58:48 +02:00
src Bug 1750930 - Make the indirect stub table two-level. r=yury 2022-01-21 15:37:21 +00:00
xpconnect Bug 1746653 - Support ReadableStream in Sandbox's wantGlobalObject r=smaug 2022-01-14 21:09:23 +00:00
app.mozbuild
ffi.configure
moz.build
moz.configure Bug 1747970 - Move AC_CHECK_FUNC{,S} to python configure. r=firefox-build-system-reviewers,andi 2022-01-20 21:01:20 +00:00
sub.configure Bug 1747501 - Move ZLIB_IN_MOZGLUE to python configure. r=firefox-build-system-reviewers,andi 2021-12-29 22:12:45 +00:00