mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2025-05-06 11:12:54 +00:00
LibJS+LibWeb: Join arguments into vector of registers+constants+locals
This is better because: - Better data locality - Allocate vector for registers+constants+locals+arguments in one go instead of allocating two vectors separately
This commit is contained in:
parent
cd9e491742
commit
c6cd03d7ca
Notes:
github-actions[bot]
2025-04-24 08:32:31 +00:00
Author: https://github.com/kalenikaliaksandr
Commit: c6cd03d7ca
Pull-request: https://github.com/LadybirdBrowser/ladybird/pull/4434
Reviewed-by: https://github.com/alimpfard
21 changed files with 76 additions and 60 deletions
|
@ -137,7 +137,7 @@ Optional<JS::PropertyDescriptor> cross_origin_get_own_property_helper(Variant<HT
|
|||
if (value->is_function()) {
|
||||
value = JS::NativeFunction::create(
|
||||
realm, [function = GC::make_root(*value)](auto& vm) {
|
||||
return JS::call(vm, function.value(), JS::js_undefined(), vm.running_execution_context().arguments.span());
|
||||
return JS::call(vm, function.value(), JS::js_undefined(), vm.running_execution_context().arguments());
|
||||
},
|
||||
0);
|
||||
}
|
||||
|
@ -154,7 +154,7 @@ Optional<JS::PropertyDescriptor> cross_origin_get_own_property_helper(Variant<HT
|
|||
if (*entry.needs_get) {
|
||||
cross_origin_get = JS::NativeFunction::create(
|
||||
realm, [object_ptr, getter = GC::make_root(*original_descriptor->get)](auto& vm) {
|
||||
return JS::call(vm, getter.cell(), object_ptr, vm.running_execution_context().arguments.span());
|
||||
return JS::call(vm, getter.cell(), object_ptr, vm.running_execution_context().arguments());
|
||||
},
|
||||
0);
|
||||
}
|
||||
|
@ -166,7 +166,7 @@ Optional<JS::PropertyDescriptor> cross_origin_get_own_property_helper(Variant<HT
|
|||
if (*entry.needs_set) {
|
||||
cross_origin_set = JS::NativeFunction::create(
|
||||
realm, [object_ptr, setter = GC::make_root(*original_descriptor->set)](auto& vm) {
|
||||
return JS::call(vm, setter.cell(), object_ptr, vm.running_execution_context().arguments.span());
|
||||
return JS::call(vm, setter.cell(), object_ptr, vm.running_execution_context().arguments());
|
||||
},
|
||||
0);
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue