Index: src/code-stub-assembler.cc |
diff --git a/src/code-stub-assembler.cc b/src/code-stub-assembler.cc |
index c9dc943fa603e98d1d504f2fe960edcd1da77280..6876b2ebf62ba8341fe9e1656d197e871db102d2 100644 |
--- a/src/code-stub-assembler.cc |
+++ b/src/code-stub-assembler.cc |
@@ -896,10 +896,17 @@ Node* CodeStubAssembler::Allocate(Node* size_in_bytes, AllocationFlags flags) { |
new_space |
? ExternalReference::new_space_allocation_top_address(isolate()) |
: ExternalReference::old_space_allocation_top_address(isolate())); |
- Node* limit_address = ExternalConstant( |
- new_space |
- ? ExternalReference::new_space_allocation_limit_address(isolate()) |
- : ExternalReference::old_space_allocation_limit_address(isolate())); |
+ DCHECK_EQ(kPointerSize, |
+ ExternalReference::new_space_allocation_limit_address(isolate()) |
+ .address() - |
+ ExternalReference::new_space_allocation_top_address(isolate()) |
+ .address()); |
+ DCHECK_EQ(kPointerSize, |
+ ExternalReference::old_space_allocation_limit_address(isolate()) |
+ .address() - |
+ ExternalReference::old_space_allocation_top_address(isolate()) |
+ .address()); |
+ Node* limit_address = IntPtrAdd(top_address, IntPtrConstant(kPointerSize)); |
#ifdef V8_HOST_ARCH_32_BIT |
if (flags & kDoubleAlignment) { |