Index: src/interpreter/interpreter.cc |
diff --git a/src/interpreter/interpreter.cc b/src/interpreter/interpreter.cc |
index a6e9317e0f03e2d8a3175314f1b258d77be8bae4..518c0830093919502ccc91996f471c19fd3d5aa8 100644 |
--- a/src/interpreter/interpreter.cc |
+++ b/src/interpreter/interpreter.cc |
@@ -196,10 +196,11 @@ void Interpreter::DoLdaGlobal(compiler::InterpreterAssembler* assembler) { |
} |
-// StaGlobal <slot_index> |
+// StaGlobalSloppy <slot_index> |
// |
-// Store the global at |slot_index| with the value in the the accumulator. |
-void Interpreter::DoStaGlobal(compiler::InterpreterAssembler* assembler) { |
+// Store the global at |slot_index| with the value in the the accumulator in |
+// sloppy mode. |
+void Interpreter::DoStaGlobalSloppy(compiler::InterpreterAssembler* assembler) { |
Node* slot_index = __ BytecodeOperandIdx8(0); |
Node* smi_slot_index = __ SmiTag(slot_index); |
Node* value = __ GetAccumulator(); |
@@ -208,6 +209,19 @@ void Interpreter::DoStaGlobal(compiler::InterpreterAssembler* assembler) { |
} |
+// StaGlobalStrict <slot_index> |
+// |
+// Store the global at |slot_index| with the value in the the accumulator in |
+// strict mode. |
+void Interpreter::DoStaGlobalStrict(compiler::InterpreterAssembler* assembler) { |
+ Node* slot_index = __ BytecodeOperandIdx8(0); |
+ Node* smi_slot_index = __ SmiTag(slot_index); |
+ Node* value = __ GetAccumulator(); |
+ __ CallRuntime(Runtime::kStoreGlobalViaContext_Strict, smi_slot_index, value); |
+ __ Dispatch(); |
+} |
+ |
+ |
// LdaContextSlot <context> <slot_index> |
// |
// Load the object in |slot_index| of |context| into the accumulator. |