mirror of
https://github.com/LadybirdBrowser/ladybird
synced 2026-05-05 06:32:30 +02:00
LibJS: Pair-load asm Call stack bounds
The asm Call fast path reads InterpreterStack::m_top and m_limit back-to-back while checking whether the inline callee frame fits. Those fields are adjacent, so we can load them together with one paired load and keep the stack-size check otherwise unchanged.
This commit is contained in:
committed by
Andreas Kling
parent
fa931612e1
commit
44deea24fe
Notes:
github-actions[bot]
2026-04-14 10:39:26 +00:00
Author: https://github.com/awesomekling Commit: https://github.com/LadybirdBrowser/ladybird/commit/44deea24fef Pull-request: https://github.com/LadybirdBrowser/ladybird/pull/8912
@@ -2090,9 +2090,8 @@ handler Call
|
||||
|
||||
load_vm t0
|
||||
lea t0, [t0, VM_INTERPRETER_STACK]
|
||||
load64 t6, [t0, INTERPRETER_STACK_TOP]
|
||||
load_pair64 t6, t0, [t0, INTERPRETER_STACK_TOP], [t0, INTERPRETER_STACK_LIMIT]
|
||||
add t2, t6
|
||||
load64 t0, [t0, INTERPRETER_STACK_LIMIT]
|
||||
branch_ge_unsigned t0, t2, .stack_ok
|
||||
jmp .call_slow
|
||||
|
||||
|
||||
Reference in New Issue
Block a user