1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-31 14:48:14 +00:00

LibJS: Work-in-progress JIT compiler :^)

This commit is contained in:
Andreas Kling 2023-10-14 14:37:48 +02:00
parent f52e4fa5c2
commit babdc0a25b
11 changed files with 634 additions and 4 deletions

View file

@ -80,6 +80,9 @@ public:
void visit_edges(Cell::Visitor&);
Span<Value> registers() { return m_current_call_frame; }
ReadonlySpan<Value> registers() const { return m_current_call_frame; }
private:
void run_bytecode();
@ -93,9 +96,6 @@ private:
return const_cast<Interpreter*>(this)->call_frame();
}
Span<Value> registers() { return m_current_call_frame; }
ReadonlySpan<Value> registers() const { return m_current_call_frame; }
void push_call_frame(Variant<NonnullOwnPtr<CallFrame>, CallFrame*>, size_t register_count);
[[nodiscard]] Variant<NonnullOwnPtr<CallFrame>, CallFrame*> pop_call_frame();