|
@@ -374,3 +374,22 @@ public:
|
|
|
};
|
|
|
|
|
|
}
|
|
|
+
|
|
|
+namespace JS::Bytecode {
|
|
|
+
|
|
|
+ALWAYS_INLINE void Instruction::execute(Bytecode::Interpreter& interpreter) const
|
|
|
+{
|
|
|
+#define __BYTECODE_OP(op) \
|
|
|
+ case Instruction::Type::op: \
|
|
|
+ return static_cast<Bytecode::Op::op const&>(*this).execute(interpreter);
|
|
|
+
|
|
|
+ switch (type()) {
|
|
|
+ ENUMERATE_BYTECODE_OPS(__BYTECODE_OP)
|
|
|
+ default:
|
|
|
+ VERIFY_NOT_REACHED();
|
|
|
+ }
|
|
|
+
|
|
|
+#undef __BYTECODE_OP
|
|
|
+}
|
|
|
+
|
|
|
+}
|