| Index: src/interpreter/bytecode-pipeline.cc
|
| diff --git a/src/interpreter/bytecode-pipeline.cc b/src/interpreter/bytecode-pipeline.cc
|
| index 07ce6ed5d2eb09f57a2a85c95ff2fcd7f3aa1010..5812c89954d51a8c369388ecec194662001eeccc 100644
|
| --- a/src/interpreter/bytecode-pipeline.cc
|
| +++ b/src/interpreter/bytecode-pipeline.cc
|
| @@ -12,6 +12,8 @@ namespace internal {
|
| namespace interpreter {
|
|
|
| void BytecodeSourceInfo::Update(const BytecodeSourceInfo& entry) {
|
| + if (!entry.is_valid()) return;
|
| +
|
| if (!is_valid() || (entry.is_statement() && !is_statement()) ||
|
| (entry.is_statement() && is_statement() &&
|
| entry.source_position() > source_position())) {
|
| @@ -75,6 +77,15 @@ BytecodeNode::BytecodeNode(Bytecode bytecode, uint32_t operand0,
|
| operand_scale_ = operand_scale;
|
| }
|
|
|
| +BytecodeNode::BytecodeNode(const BytecodeNode& other) {
|
| + memcpy(this, &other, sizeof(other));
|
| +}
|
| +
|
| +BytecodeNode& BytecodeNode::operator=(const BytecodeNode& other) {
|
| + memcpy(this, &other, sizeof(other));
|
| + return *this;
|
| +}
|
| +
|
| void BytecodeNode::set_bytecode(Bytecode bytecode) {
|
| DCHECK_EQ(Bytecodes::NumberOfOperands(bytecode), 0);
|
| bytecode_ = bytecode;
|
|
|