Index: src/assembler.cc |
diff --git a/src/assembler.cc b/src/assembler.cc |
index b44bc06ba36aaff6cbd92c6a6f9a1f928e0f35a7..16c68da45358639c60c1629f849414aed2552ec6 100644 |
--- a/src/assembler.cc |
+++ b/src/assembler.cc |
@@ -352,9 +352,8 @@ void RelocInfo::update_wasm_memory_reference( |
} else if (IsWasmMemorySizeReference(rmode_)) { |
uint32_t current_size_reference = wasm_memory_size_reference(); |
DCHECK(old_size == 0 || current_size_reference <= old_size); |
- uint32_t offset = old_size - current_size_reference; |
- DCHECK_GE(new_size, offset); |
- uint32_t updated_size_reference = new_size - offset; |
+ uint32_t updated_size_reference = |
+ new_size + (current_size_reference - old_size); |
unchecked_update_wasm_memory_size(updated_size_reference, |
icache_flush_mode); |
} else { |