Index: src/heap/heap-inl.h |
diff --git a/src/heap/heap-inl.h b/src/heap/heap-inl.h |
index 6c2e36294a4460462ff470bb8d86a73302871794..d8bb4200b1a51d4cc46246838cd079478345a9e0 100644 |
--- a/src/heap/heap-inl.h |
+++ b/src/heap/heap-inl.h |
@@ -543,44 +543,6 @@ Isolate* Heap::isolate() { |
} |
-// Calls the FUNCTION_CALL function and retries it up to three times |
-// to guarantee that any allocations performed during the call will |
-// succeed if there's enough memory. |
-// |
-// Warning: Do not use the identifiers __object__, __maybe_object__, |
-// __allocation__ or __scope__ in a call to this macro. |
- |
-#define RETURN_OBJECT_UNLESS_RETRY(ISOLATE, TYPE) \ |
- if (__allocation__.To(&__object__)) { \ |
- DCHECK(__object__ != (ISOLATE)->heap()->exception()); \ |
- return Handle<TYPE>(TYPE::cast(__object__), ISOLATE); \ |
- } |
- |
-#define CALL_HEAP_FUNCTION(ISOLATE, FUNCTION_CALL, TYPE) \ |
- do { \ |
- AllocationResult __allocation__ = FUNCTION_CALL; \ |
- Object* __object__ = NULL; \ |
- RETURN_OBJECT_UNLESS_RETRY(ISOLATE, TYPE) \ |
- /* Two GCs before panicking. In newspace will almost always succeed. */ \ |
- for (int __i__ = 0; __i__ < 2; __i__++) { \ |
- (ISOLATE)->heap()->CollectGarbage(__allocation__.RetrySpace(), \ |
- "allocation failure"); \ |
- __allocation__ = FUNCTION_CALL; \ |
- RETURN_OBJECT_UNLESS_RETRY(ISOLATE, TYPE) \ |
- } \ |
- (ISOLATE)->counters()->gc_last_resort_from_handles()->Increment(); \ |
- (ISOLATE)->heap()->CollectAllAvailableGarbage("last resort gc"); \ |
- { \ |
- AlwaysAllocateScope __scope__(ISOLATE); \ |
- __allocation__ = FUNCTION_CALL; \ |
- } \ |
- RETURN_OBJECT_UNLESS_RETRY(ISOLATE, TYPE) \ |
- /* TODO(1181417): Fix this. */ \ |
- v8::internal::Heap::FatalProcessOutOfMemory("CALL_AND_RETRY_LAST", true); \ |
- return Handle<TYPE>(); \ |
- } while (false) |
- |
- |
void Heap::ExternalStringTable::AddString(String* string) { |
DCHECK(string->IsExternalString()); |
if (heap_->InNewSpace(string)) { |