Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(678)

Unified Diff: src/compiler/bytecode-graph-builder.cc

Issue 2510743002: [interpreter] Bytecode for StaDataPropertyInLiteral. (Closed)
Patch Set: Delete double line. Created 4 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: src/compiler/bytecode-graph-builder.cc
diff --git a/src/compiler/bytecode-graph-builder.cc b/src/compiler/bytecode-graph-builder.cc
index 4c14267479064612b40b79e7e8d14dfca238d352..3dcf173e482bf7ff0a6590cf0002d0558e4334db 100644
--- a/src/compiler/bytecode-graph-builder.cc
+++ b/src/compiler/bytecode-graph-builder.cc
@@ -786,6 +786,23 @@ void BytecodeGraphBuilder::VisitStaGlobalStrict() {
BuildStoreGlobal(LanguageMode::STRICT);
}
+void BytecodeGraphBuilder::VisitStaDataPropertyInLiteral() {
+ Node* object =
+ environment()->LookupRegister(bytecode_iterator().GetRegisterOperand(0));
+ Node* name =
+ environment()->LookupRegister(bytecode_iterator().GetRegisterOperand(1));
+ Node* attrs =
+ environment()->LookupRegister(bytecode_iterator().GetRegisterOperand(2));
+ Node* set_function_name =
+ environment()->LookupRegister(bytecode_iterator().GetRegisterOperand(3));
+
+ Node* value = environment()->LookupAccumulator();
+ const Operator* op =
+ javascript()->CallRuntime(Runtime::kDefineDataPropertyInLiteral);
+ Node* store = NewNode(op, object, name, value, attrs, set_function_name);
+ environment()->BindAccumulator(store, Environment::kAttachFrameState);
rmcilroy 2016/11/17 17:18:16 You shouldn't be calling BindAccumulator here sinc
Franzi 2016/11/18 09:11:53 Done.
+}
+
void BytecodeGraphBuilder::VisitLdaContextSlot() {
// TODO(mythria): immutable flag is also set to false. This information is not
// available in bytecode array. update this code when the implementation

Powered by Google App Engine
This is Rietveld 408576698