mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2025-07-31 05:09:12 +00:00
LibJS/Bytecode: Add Call opcode for fixed-argument-count calls
This avoids the overhead of allocating a new Array on every function call, saving a substantial amount of time and avoiding GC thrash. This patch only makes use of Op::Call in CallExpression. There are other places we should codegen this op. We should also do the same for super expression calls. ~5% speed-up on Kraken/stanford-crypto-ccm.js
This commit is contained in:
parent
7eb87dec9f
commit
c37b204ce1
Notes:
sideshowbarker
2024-07-17 23:02:37 +09:00
Author: https://github.com/awesomekling
Commit: c37b204ce1
Pull-request: https://github.com/SerenityOS/serenity/pull/19756
Reviewed-by: https://github.com/Hendiadyoin1
5 changed files with 135 additions and 41 deletions
|
@ -18,6 +18,7 @@
|
|||
O(BitwiseOr) \
|
||||
O(BitwiseXor) \
|
||||
O(BlockDeclarationInstantiation) \
|
||||
O(Call) \
|
||||
O(CallWithArgumentArray) \
|
||||
O(ConcatString) \
|
||||
O(ContinuePendingUnwind) \
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue