Merge V8 5.3.332.45. DO NOT MERGE
Test: Manual
FPIIM-449
Change-Id: Id3254828b068abdea3cb10442e0172a8c9a98e03
(cherry picked from commit 13e2dadd00298019ed862f2b2fc5068bba730bcf)
diff --git a/src/interpreter/interpreter.h b/src/interpreter/interpreter.h
index d774d8b..468486c 100644
--- a/src/interpreter/interpreter.h
+++ b/src/interpreter/interpreter.h
@@ -70,17 +70,13 @@
BYTECODE_LIST(DECLARE_BYTECODE_HANDLER_GENERATOR)
#undef DECLARE_BYTECODE_HANDLER_GENERATOR
- // Generates code to perform the binary operation via |callable|.
- void DoBinaryOp(Callable callable, InterpreterAssembler* assembler);
-
- // Generates code to perform the binary operation via |function_id|.
- void DoBinaryOp(Runtime::FunctionId function_id,
- InterpreterAssembler* assembler);
-
// Generates code to perform the binary operation via |Generator|.
template <class Generator>
void DoBinaryOp(InterpreterAssembler* assembler);
+ // Generates code to perform the unary operation via |callable|.
+ void DoUnaryOp(Callable callable, InterpreterAssembler* assembler);
+
// Generates code to perform the unary operation via |Generator|.
template <class Generator>
void DoUnaryOp(InterpreterAssembler* assembler);
@@ -89,22 +85,10 @@
// |compare_op|.
void DoCompareOp(Token::Value compare_op, InterpreterAssembler* assembler);
- // Generates code to load a constant from the constant pool.
- void DoLoadConstant(InterpreterAssembler* assembler);
-
- // Generates code to perform a global load via |ic|.
- void DoLoadGlobal(Callable ic, InterpreterAssembler* assembler);
-
// Generates code to perform a global store via |ic|.
- void DoStoreGlobal(Callable ic, InterpreterAssembler* assembler);
+ void DoStaGlobal(Callable ic, InterpreterAssembler* assembler);
- // Generates code to perform a named property load via |ic|.
- void DoLoadIC(Callable ic, InterpreterAssembler* assembler);
-
- // Generates code to perform a keyed property load via |ic|.
- void DoKeyedLoadIC(Callable ic, InterpreterAssembler* assembler);
-
- // Generates code to perform a namedproperty store via |ic|.
+ // Generates code to perform a named property store via |ic|.
void DoStoreIC(Callable ic, InterpreterAssembler* assembler);
// Generates code to perform a keyed property store via |ic|.
@@ -125,23 +109,44 @@
// Generates code to perform a constructor call.
void DoCallConstruct(InterpreterAssembler* assembler);
- // Generates code to perform a type conversion.
- void DoTypeConversionOp(Callable callable, InterpreterAssembler* assembler);
-
- // Generates code to perform logical-not on boolean |value|.
- void DoLogicalNotOp(compiler::Node* value, InterpreterAssembler* assembler);
-
// Generates code to perform delete via function_id.
void DoDelete(Runtime::FunctionId function_id,
InterpreterAssembler* assembler);
// Generates code to perform a lookup slot load via |function_id|.
- void DoLoadLookupSlot(Runtime::FunctionId function_id,
- InterpreterAssembler* assembler);
+ void DoLdaLookupSlot(Runtime::FunctionId function_id,
+ InterpreterAssembler* assembler);
// Generates code to perform a lookup slot store depending on |language_mode|.
- void DoStoreLookupSlot(LanguageMode language_mode,
- InterpreterAssembler* assembler);
+ void DoStaLookupSlot(LanguageMode language_mode,
+ InterpreterAssembler* assembler);
+
+ // Generates a node with the undefined constant.
+ compiler::Node* BuildLoadUndefined(InterpreterAssembler* assembler);
+
+ // Generates code to load a context slot.
+ compiler::Node* BuildLoadContextSlot(InterpreterAssembler* assembler);
+
+ // Generates code to load a global.
+ compiler::Node* BuildLoadGlobal(Callable ic, InterpreterAssembler* assembler);
+
+ // Generates code to load a named property.
+ compiler::Node* BuildLoadNamedProperty(Callable ic,
+ InterpreterAssembler* assembler);
+
+ // Generates code to load a keyed property.
+ compiler::Node* BuildLoadKeyedProperty(Callable ic,
+ InterpreterAssembler* assembler);
+
+ // Generates code to perform logical-not on boolean |value| and returns the
+ // result.
+ compiler::Node* BuildLogicalNot(compiler::Node* value,
+ InterpreterAssembler* assembler);
+
+ // Generates code to convert |value| to a boolean and returns the
+ // result.
+ compiler::Node* BuildToBoolean(compiler::Node* value,
+ InterpreterAssembler* assembler);
uintptr_t GetDispatchCounter(Bytecode from, Bytecode to) const;