|
Reland "Replace slots buffer with remembered set. (patchset #14 id:250001 of https://codereview.chromium.org/1703823002/ )"
This reverts commit 9146bc5e2075797432c814b51c3e862ff959aacc.
This contains a fix for the following crash:
1. We record slots for a fixed array.
2. We trim the fixed array, so that some recorded slots are now in free space.
3. During mark-compact we sweep the page with the fixed array. Now free list items contain memory with recorded slots.
4. We evacuate a byte array using the new free list items.
5. We iterate slots that are now inside the byte array and crash.
BUG= chromium:589413, chromium:578883
LOG=NO
Committed: https://crrev.com/01b8fc894b74ac9c12e18a1308950bb4a2f7c550
Cr-Commit-Position: refs/heads/master@{#34302}
|
Unified diffs |
Side-by-side diffs |
Delta from patch set |
Stats (+701 lines, -831 lines) |
Patch |
|
M |
BUILD.gn
|
View
|
|
1 chunk |
+0 lines, -2 lines |
0 comments
|
Download
|
|
M |
src/heap/heap.cc
|
View
|
1
2
3
4
5
|
2 chunks |
+2 lines, -0 lines |
0 comments
|
Download
|
|
M |
src/heap/incremental-marking.h
|
View
|
|
1 chunk |
+2 lines, -4 lines |
0 comments
|
Download
|
|
M |
src/heap/incremental-marking.cc
|
View
|
|
1 chunk |
+4 lines, -6 lines |
0 comments
|
Download
|
|
M |
src/heap/incremental-marking-inl.h
|
View
|
|
1 chunk |
+2 lines, -3 lines |
0 comments
|
Download
|
|
M |
src/heap/mark-compact.h
|
View
|
|
9 chunks |
+9 lines, -36 lines |
0 comments
|
Download
|
|
M |
src/heap/mark-compact.cc
|
View
|
1
2
3
4
|
34 chunks |
+135 lines, -286 lines |
0 comments
|
Download
|
|
M |
src/heap/mark-compact-inl.h
|
View
|
1
2
3
|
2 chunks |
+5 lines, -18 lines |
0 comments
|
Download
|
|
M |
src/heap/objects-visiting-inl.h
|
View
|
|
5 chunks |
+12 lines, -7 lines |
0 comments
|
Download
|
|
M |
src/heap/remembered-set.h
|
View
|
|
4 chunks |
+142 lines, -6 lines |
0 comments
|
Download
|
|
M |
src/heap/remembered-set.cc
|
View
|
1
2
|
3 chunks |
+18 lines, -11 lines |
0 comments
|
Download
|
|
M |
src/heap/slot-set.h
|
View
|
|
3 chunks |
+121 lines, -2 lines |
0 comments
|
Download
|
|
D |
src/heap/slots-buffer.h
|
View
|
|
1 chunk |
+0 lines, -175 lines |
0 comments
|
Download
|
|
D |
src/heap/slots-buffer.cc
|
View
|
|
1 chunk |
+0 lines, -164 lines |
0 comments
|
Download
|
|
M |
src/heap/spaces.h
|
View
|
|
8 chunks |
+47 lines, -21 lines |
0 comments
|
Download
|
|
M |
src/heap/spaces.cc
|
View
|
1
2
3
4
5
|
5 chunks |
+14 lines, -4 lines |
0 comments
|
Download
|
|
M |
src/heap/spaces-inl.h
|
View
|
|
3 chunks |
+33 lines, -19 lines |
0 comments
|
Download
|
|
M |
src/heap/store-buffer.h
|
View
|
|
1 chunk |
+0 lines, -35 lines |
0 comments
|
Download
|
|
M |
src/heap/store-buffer-inl.h
|
View
|
|
1 chunk |
+0 lines, -16 lines |
0 comments
|
Download
|
|
M |
test/cctest/cctest.gyp
|
View
|
|
1 chunk |
+0 lines, -1 line |
0 comments
|
Download
|
|
M |
test/cctest/heap/heap-tester.h
|
View
|
1
|
1 chunk |
+1 line, -0 lines |
0 comments
|
Download
|
|
M |
test/cctest/heap/test-heap.cc
|
View
|
1
2
3
4
5
6
7
|
1 chunk |
+75 lines, -0 lines |
0 comments
|
Download
|
|
M |
test/cctest/test-unboxed-doubles.cc
|
View
|
|
2 chunks |
+3 lines, -11 lines |
0 comments
|
Download
|
|
A |
test/unittests/heap/remembered-set-unittest.cc
|
View
|
|
1 chunk |
+45 lines, -0 lines |
0 comments
|
Download
|
|
M |
test/unittests/heap/slot-set-unittest.cc
|
View
|
|
2 chunks |
+30 lines, -2 lines |
0 comments
|
Download
|
|
M |
test/unittests/unittests.gyp
|
View
|
1
2
3
4
5
|
1 chunk |
+1 line, -0 lines |
0 comments
|
Download
|
|
M |
tools/gyp/v8.gyp
|
View
|
|
1 chunk |
+0 lines, -2 lines |
0 comments
|
Download
|
Total messages: 18 (11 generated)
|