summaryrefslogtreecommitdiff
path: root/Userland/Libraries/LibJS/Bytecode/Interpreter.cpp
AgeCommit message (Expand)Author
2022-02-13LibJS: More properly implement scoping rules in bytecode codegenAli Mohammad Pur
2022-02-13LibJS: Implement the NewClass opcodeAli Mohammad Pur
2022-02-08LibJS+Everywhere: Remove VM::exception() and most related functionsdavidot
2022-02-08LibJS: Always pop the execution context if we pushed one for bytecodedavidot
2022-02-08LibJS: Convert Instruction::execute in bytecode to ThrowCompletionOrdavidot
2022-01-24LibJS: Fix the execution context for the bytecode interpreterdavidot
2022-01-08LibJS: Remove now unused VM::{set_,}last_value()Linus Groh
2021-11-14LibJS: Convert push_execution_context() to ThrowCompletionOrLinus Groh
2021-11-12LibJS+LibTest+js: Convert BC::Interpreter::run to ThrowCompletionOr<>Ali Mohammad Pur
2021-11-12LibJS: Run the queued promise reaction jobs on bytecode interpreter exitAli Mohammad Pur
2021-11-12LibJS: Make Bytecode::Interpreter return the popped frameAli Mohammad Pur
2021-10-25LibJS: Propagate exceptions across bytecode executable boundariesAndreas Kling
2021-10-25LibJS: Make bytecode interpreter leave unwind context immediatelyAndreas Kling
2021-10-24LibJS: Move global "should dump bytecode" flag into LibJSAndreas Kling
2021-09-13LibJS: Also set ExecutionContext::realm in Bytecode::Interpreter::run()Linus Groh
2021-09-12LibJS: Move the GlobalEnvironment from GlobalObject to RealmLinus Groh
2021-09-12LibJS: Allocate a Realm next to GlobalObject in Interpreter::create()Linus Groh
2021-08-10LibJS: Change ExecutionContext's arguments list to a MarkedValueListTimothy Flynn
2021-07-01LibJS: Drop "Record" suffix from all the *Environment record classesAndreas Kling
2021-06-24LibJS: Rename CallFrame => ExecutionContextAndreas Kling
2021-06-22LibJS: Begin implementing GlobalEnvironmentRecordAndreas Kling
2021-06-22LibJS: Split the per-call-frame environment into lexical and variableAndreas Kling
2021-06-21LibJS: Rename Environment Records so they match the spec :^)Andreas Kling
2021-06-15LibJS: Add a basic pass manager and add some basic passesAli Mohammad Pur
2021-06-12LibJS: Store and maintain an "execution generation" counterIdan Horowitz
2021-06-11LibJS: Implement generator functions (only in bytecode mode)Ali Mohammad Pur
2021-06-10LibJS: Always keep the global object in bytecode VM register $1Andreas Kling
2021-06-10LibJS: Implement bytecode generation for try..catch..finallyGunnar Beutner
2021-06-10LibJS: Let the bytecode interpreter set the VM's last valueGunnar Beutner
2021-06-09LibJS: Stop bytecode execution after we've encountered an exceptionGunnar Beutner
2021-06-09LibJS: Store strings in a string tableGunnar Beutner
2021-06-09LibJS: Move Bytecode::Instruction::execute() to the Op.h headerAndreas Kling
2021-06-09LibJS: Rename Bytecode::ExecutionUnit => Bytecode::ExecutableAndreas Kling
2021-06-09LibJS: Generate bytecode in basic blocks instead of one big blockAli Mohammad Pur
2021-06-07LibJS: Move bytecode debug spam behind JS_BYTECODE_DEBUG :^)Andreas Kling
2021-06-07LibJS: Devirtualize and pack the bytecode stream :^)Andreas Kling
2021-06-07LibJS: Reset Bytecode::Interpreter's m_return_value when leaving run()Andreas Kling
2021-06-07LibJS: Make sure the global CallFrame doesn't go out of scopeAndreas Kling
2021-06-07LibJS: Compile ScriptFunctions into bytecode and run them that way :^)Andreas Kling
2021-06-07LibJS: Create a global/outermost CallFrame for Bytecode::InterpreterAndreas Kling
2021-06-07LibJS: Add basic support for while loops in the bytecode engineAndreas Kling
2021-06-07LibJS: Add a VM accessor to Bytecode::Interpreter :^)Andreas Kling
2021-06-07LibJS: Start fleshing out a bytecode for the JavaScript engine :^)Andreas Kling