aboutsummaryrefslogtreecommitdiff
path: root/deps/v8/src/interpreter/interpreter.h
diff options
context:
space:
mode:
Diffstat (limited to 'deps/v8/src/interpreter/interpreter.h')
-rw-r--r--deps/v8/src/interpreter/interpreter.h20
1 files changed, 20 insertions, 0 deletions
diff --git a/deps/v8/src/interpreter/interpreter.h b/deps/v8/src/interpreter/interpreter.h
index 64101de657..c32b6831d0 100644
--- a/deps/v8/src/interpreter/interpreter.h
+++ b/deps/v8/src/interpreter/interpreter.h
@@ -9,12 +9,16 @@
// Do not include anything from src/interpreter other than
// src/interpreter/bytecodes.h here!
#include "src/base/macros.h"
+#include "src/builtins.h"
#include "src/interpreter/bytecodes.h"
+#include "src/runtime/runtime.h"
+#include "src/token.h"
namespace v8 {
namespace internal {
class Isolate;
+class Callable;
class CompilationInfo;
namespace compiler {
@@ -46,6 +50,22 @@ class Interpreter {
BYTECODE_LIST(DECLARE_BYTECODE_HANDLER_GENERATOR)
#undef DECLARE_BYTECODE_HANDLER_GENERATOR
+ // Generates code to perform the binary operations via |function_id|.
+ void DoBinaryOp(Runtime::FunctionId function_id,
+ compiler::InterpreterAssembler* assembler);
+
+ // Generates code to perform the comparison operation associated with
+ // |compare_op|.
+ void DoCompareOp(Token::Value compare_op,
+ compiler::InterpreterAssembler* assembler);
+
+ // Generates code to perform a property load via |ic|.
+ void DoPropertyLoadIC(Callable ic, compiler::InterpreterAssembler* assembler);
+
+ // Generates code to perform a property store via |ic|.
+ void DoPropertyStoreIC(Callable ic,
+ compiler::InterpreterAssembler* assembler);
+
bool IsInterpreterTableInitialized(Handle<FixedArray> handler_table);
Isolate* isolate_;