Index: src/compiler/mips64/code-generator-mips64.cc |
diff --git a/src/compiler/mips64/code-generator-mips64.cc b/src/compiler/mips64/code-generator-mips64.cc |
index b857bd3499bde18c69cec6ad003b12d8e41f9d0b..483d4c1522d564e855326891e6a37dd0a90956cf 100644 |
--- a/src/compiler/mips64/code-generator-mips64.cc |
+++ b/src/compiler/mips64/code-generator-mips64.cc |
@@ -2069,7 +2069,11 @@ void CodeGenerator::AssembleMove(InstructionOperand* source, |
destination->IsRegister() ? g.ToRegister(destination) : kScratchReg; |
switch (src.type()) { |
case Constant::kInt32: |
- __ li(dst, Operand(src.ToInt32())); |
+ if (src.rmode() == RelocInfo::WASM_MEMORY_SIZE_REFERENCE) { |
+ __ li(dst, Operand(src.ToInt32(), src.rmode())); |
+ } else { |
+ __ li(dst, Operand(src.ToInt32())); |
+ } |
break; |
case Constant::kFloat32: |
__ li(dst, isolate()->factory()->NewNumber(src.ToFloat32(), TENURED)); |
@@ -2078,6 +2082,7 @@ void CodeGenerator::AssembleMove(InstructionOperand* source, |
if (src.rmode() == RelocInfo::WASM_MEMORY_REFERENCE) { |
__ li(dst, Operand(src.ToInt64(), src.rmode())); |
} else { |
+ DCHECK(src.rmode() != RelocInfo::WASM_MEMORY_SIZE_REFERENCE); |
__ li(dst, Operand(src.ToInt64())); |
} |
break; |