| Index: src/arm64/lithium-arm64.cc
|
| diff --git a/src/arm64/lithium-arm64.cc b/src/arm64/lithium-arm64.cc
|
| index 920ea3e6c5d14b158f38f3cebc4bee44d9527782..19523645ccfb45ebb557426646653e562edf45cd 100644
|
| --- a/src/arm64/lithium-arm64.cc
|
| +++ b/src/arm64/lithium-arm64.cc
|
| @@ -902,7 +902,10 @@ LInstruction* LChunkBuilder::DoAdd(HAdd* instr) {
|
| return result;
|
| } else if (instr->representation().IsExternal()) {
|
| DCHECK(instr->left()->representation().IsExternal());
|
| - DCHECK(instr->right()->representation().IsInteger32());
|
| + DCHECK((instr->external_add_type() == AddOfExternalAndInt32 &&
|
| + instr->right()->representation().IsInteger32()) ||
|
| + (instr->external_add_type() == AddOfExternalAndTagged &&
|
| + instr->right()->representation().IsTagged()));
|
| DCHECK(!instr->CheckFlag(HValue::kCanOverflow));
|
| LOperand* left = UseRegisterAtStart(instr->left());
|
| LOperand* right = UseRegisterOrConstantAtStart(instr->right());
|
|
|