Index: src/interpreter/interpreter.cc |
diff --git a/src/interpreter/interpreter.cc b/src/interpreter/interpreter.cc |
index 48b0f3ad12e74b18edb18e48621dce2e9911ad76..dc4134caf1176b4e22c4fa2d2af450b61c182ea9 100644 |
--- a/src/interpreter/interpreter.cc |
+++ b/src/interpreter/interpreter.cc |
@@ -1316,10 +1316,11 @@ void Interpreter::DoJumpIfUndefinedConstant( |
void Interpreter::DoCreateLiteral(Runtime::FunctionId function_id, |
compiler::InterpreterAssembler* assembler) { |
- Node* constant_elements = __ GetAccumulator(); |
- Node* literal_index_raw = __ BytecodeOperandIdx(0); |
+ Node* index = __ BytecodeOperandIdx(0); |
+ Node* constant_elements = __ LoadConstantPoolEntry(index); |
+ Node* literal_index_raw = __ BytecodeOperandIdx(1); |
Node* literal_index = __ SmiTag(literal_index_raw); |
- Node* flags_raw = __ BytecodeOperandImm(1); |
+ Node* flags_raw = __ BytecodeOperandImm(2); |
Node* flags = __ SmiTag(flags_raw); |
Node* closure = __ LoadRegister(Register::function_closure()); |
Node* result = __ CallRuntime(function_id, closure, literal_index, |