mirror of
https://github.com/LadybirdBrowser/ladybird
synced 2026-05-11 09:27:00 +02:00
Mark direct calls to function expressions while generating top-level Rust bytecode, then compile those functions before returning the off-thread compilation result to WebContent. The main thread still performs all VM and GC-backed materialization. It now receives an already assembled executable for each eager IIFE and attaches it to the SharedFunctionInstanceData while creating the parent Executable. Nested functions owned by the eager executable remain lazy. This targets large wrapper IIFEs that are invoked as soon as top-level code starts running. Their bytecode generation now runs on the existing script compilation worker instead of blocking the main thread on first call.
47 KiB
47 KiB