mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2025-06-12 02:30:30 +09:00
![]() Instead of letting every [[Call]] implementation allocate an ExecutionContext, we now make that a responsibility of the caller. The main point of this exercise is to allow the Call instruction to write function arguments directly into the callee ExecutionContext instead of copying them later. This makes function calls significantly faster: - 10-20% faster on micro-benchmarks (depending on argument count) - 4% speedup on Kraken - 2% speedup on Octane - 5% speedup on JetStream |
||
---|---|---|
.. | ||
ASTCodegen.cpp | ||
BasicBlock.cpp | ||
BasicBlock.h | ||
Builtins.cpp | ||
Builtins.h | ||
CodeGenerationError.cpp | ||
CodeGenerationError.h | ||
Executable.cpp | ||
Executable.h | ||
Generator.cpp | ||
Generator.h | ||
IdentifierTable.cpp | ||
IdentifierTable.h | ||
Instruction.cpp | ||
Instruction.h | ||
Interpreter.cpp | ||
Interpreter.h | ||
Label.cpp | ||
Label.h | ||
Op.h | ||
Operand.h | ||
RegexTable.cpp | ||
RegexTable.h | ||
Register.h | ||
ScopedOperand.cpp | ||
ScopedOperand.h | ||
StringTable.cpp | ||
StringTable.h |