Commit 53d68701 authored by Michael Lippautz's avatar Michael Lippautz Committed by Commit Bot

[heap] Change inlining for full MC marking visitor

Inline pointers visitation instead of handling recursive marking.

Bug: chromium:738831
Change-Id: I0840258988c3097119f6299f0e1b6759b55fbd27
Reviewed-on: https://chromium-review.googlesource.com/559346
Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
Reviewed-by: 's avatarUlan Degenbaev <ulan@chromium.org>
Cr-Commit-Position: refs/heads/master@{#46414}
parent 49e110b1
......@@ -1044,12 +1044,12 @@ class MarkCompactMarkingVisitor final
: MarkingVisitor<MarkCompactMarkingVisitor>(collector->heap(),
collector) {}
inline void VisitPointer(HeapObject* host, Object** p) final {
V8_INLINE void VisitPointer(HeapObject* host, Object** p) final {
MarkObjectByPointer(host, p);
}
inline void VisitPointers(HeapObject* host, Object** start,
Object** end) final {
V8_INLINE void VisitPointers(HeapObject* host, Object** start,
Object** end) final {
// Mark all objects pointed to in [start, end).
const int kMinRangeForMarkingRecursion = 64;
if (end - start >= kMinRangeForMarkingRecursion) {
......@@ -1082,8 +1082,8 @@ class MarkCompactMarkingVisitor final
protected:
// Visit all unmarked objects pointed to by [start, end).
// Returns false if the operation fails (lack of stack space).
V8_INLINE bool VisitUnmarkedObjects(HeapObject* host, Object** start,
Object** end) {
inline bool VisitUnmarkedObjects(HeapObject* host, Object** start,
Object** end) {
// Return false is we are close to the stack limit.
StackLimitCheck check(heap_->isolate());
if (check.HasOverflowed()) return false;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment