| Index: src/heap/spaces-inl.h
|
| diff --git a/src/heap/spaces-inl.h b/src/heap/spaces-inl.h
|
| index ef081fa00a6b982132feddce542beb39e59e0ca4..3fbd5b7853ea2db4ed654402f31bce2cb146c452 100644
|
| --- a/src/heap/spaces-inl.h
|
| +++ b/src/heap/spaces-inl.h
|
| @@ -462,12 +462,18 @@ AllocationResult PagedSpace::AllocateRawAligned(int size_in_bytes,
|
| AllocationResult PagedSpace::AllocateRaw(int size_in_bytes,
|
| AllocationAlignment alignment) {
|
| #ifdef V8_HOST_ARCH_32_BIT
|
| - return alignment == kDoubleAligned
|
| - ? AllocateRawAligned(size_in_bytes, kDoubleAligned)
|
| - : AllocateRawUnaligned(size_in_bytes);
|
| + AllocationResult result =
|
| + alignment == kDoubleAligned
|
| + ? AllocateRawAligned(size_in_bytes, kDoubleAligned)
|
| + : AllocateRawUnaligned(size_in_bytes);
|
| #else
|
| - return AllocateRawUnaligned(size_in_bytes);
|
| + AllocationResult result = AllocateRawUnaligned(size_in_bytes);
|
| #endif
|
| + HeapObject* heap_obj = nullptr;
|
| + if (!result.IsRetry() && result.To(&heap_obj)) {
|
| + AllocationStep(heap_obj->address(), size_in_bytes);
|
| + }
|
| + return result;
|
| }
|
|
|
|
|
|
|