mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2026-04-20 02:40:27 +00:00
LibJS: Cache Executable constants for asm Call
Mirror Executable's constants size and data pointer in adjacent fields so the asm Call fast path can pair-load them together. The underlying Vector layout keeps size and data apart, so a small cached raw span lets the hot constant-copy loop fetch both pieces of metadata at once.
This commit is contained in:
parent
5761f6bc54
commit
b6c7f6c0c4
Notes:
github-actions[bot]
2026-04-14 10:38:12 +00:00
Author: https://github.com/awesomekling
Commit: b6c7f6c0c4
Pull-request: https://github.com/LadybirdBrowser/ladybird/pull/8912
4 changed files with 7 additions and 2 deletions
|
|
@ -83,6 +83,8 @@ Executable::Executable(
|
|||
template_object_caches.resize(number_of_template_object_caches);
|
||||
object_shape_caches.resize(number_of_object_shape_caches);
|
||||
object_property_iterator_caches.resize(number_of_object_property_iterator_caches);
|
||||
asm_constants_size = this->constants.size();
|
||||
asm_constants_data = this->constants.data();
|
||||
}
|
||||
|
||||
Executable::~Executable() = default;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue