Bug 287524
Summary: | [JSC] Implement an arena allocator for the compiler's transient allocations | ||
---|---|---|---|
Product: | WebKit | Reporter: | Marcus Plutowski <marcus_plutowski> |
Component: | New Bugs | Assignee: | Nobody <webkit-unassigned> |
Status: | RESOLVED FIXED | ||
Severity: | Normal | Keywords: | InRadar |
Priority: | P2 | ||
Version: | WebKit Nightly Build | ||
Hardware: | Unspecified | ||
OS: | Unspecified |
Marcus Plutowski
rdar://114840482
Currently, we use a general-purpose allocator (libpas) for all allocations made by the compiler. Many of these allocations, however, have a trivially bounded lifetime -- starting no earlier than the beginning of a compilation job, and lasting no longer than the completion of that compilation job. While this does not apply to all compiler outputs, it stands to reason that we should be able to get a performance improvement by moving those allocations which do qualify over to an arena-based allocator. This would save both overhead on the allocation side (as we could use a simple bump-allocator ~100% of the time) and on deallocation (free becomes a no-op).
Attachments | ||
---|---|---|
Add attachment proposed patch, testcase, etc. |
Marcus Plutowski
Pull request: https://github.com/WebKit/WebKit/pull/40575
EWS
Committed 291155@main (9dd52f49f7c3): <https://commits.webkit.org/291155@main>
Reviewed commits have been landed. Closing PR #40575 and removing active labels.