Bug 205194 - [JSC] Remove ArrayBufferNeuteringWatchpointSet
Summary: [JSC] Remove ArrayBufferNeuteringWatchpointSet
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: JavaScriptCore (show other bugs)
Version: WebKit Nightly Build
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Yusuke Suzuki
URL:
Keywords: InRadar
Depends on:
Blocks:
 
Reported: 2019-12-12 20:16 PST by Yusuke Suzuki
Modified: 2019-12-16 14:18 PST (History)
18 users (show)

See Also:


Attachments
Patch (68.00 KB, patch)
2019-12-13 16:30 PST, Yusuke Suzuki
no flags Details | Formatted Diff | Diff
Patch (68.49 KB, patch)
2019-12-13 16:51 PST, Yusuke Suzuki
no flags Details | Formatted Diff | Diff
Patch (70.08 KB, patch)
2019-12-13 17:00 PST, Yusuke Suzuki
no flags Details | Formatted Diff | Diff
Patch (70.24 KB, patch)
2019-12-13 17:14 PST, Yusuke Suzuki
no flags Details | Formatted Diff | Diff
Patch (72.45 KB, patch)
2019-12-13 17:53 PST, Yusuke Suzuki
no flags Details | Formatted Diff | Diff
Patch (72.47 KB, patch)
2019-12-13 18:05 PST, Yusuke Suzuki
no flags Details | Formatted Diff | Diff
Patch (70.76 KB, patch)
2019-12-13 21:02 PST, Yusuke Suzuki
no flags Details | Formatted Diff | Diff
Patch (73.39 KB, patch)
2019-12-13 21:27 PST, Yusuke Suzuki
saam: review+
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Yusuke Suzuki 2019-12-12 20:16:12 PST
I think, just putting RefPtr<WatchpointSet> in ArrayBuffer is enough.
Comment 1 Yusuke Suzuki 2019-12-12 20:16:53 PST
By reordering ArrayBuffer's field, we can save 8bytes. We can put RefPtr<WatchpointSet> in this place.
Comment 2 Yusuke Suzuki 2019-12-13 16:03:06 PST
This is the last patch, after that, all non-object non-butterfly JSCells are in IsoSubspace.
Comment 3 Yusuke Suzuki 2019-12-13 16:30:06 PST
Created attachment 385655 [details]
Patch
Comment 4 Yusuke Suzuki 2019-12-13 16:51:00 PST
Created attachment 385658 [details]
Patch
Comment 5 Yusuke Suzuki 2019-12-13 17:00:25 PST
Created attachment 385661 [details]
Patch
Comment 6 Yusuke Suzuki 2019-12-13 17:14:21 PST
Created attachment 385663 [details]
Patch
Comment 7 Yusuke Suzuki 2019-12-13 17:53:26 PST
Created attachment 385665 [details]
Patch
Comment 8 Yusuke Suzuki 2019-12-13 18:05:08 PST
Created attachment 385666 [details]
Patch
Comment 9 Yusuke Suzuki 2019-12-13 21:02:02 PST
Created attachment 385675 [details]
Patch
Comment 10 Yusuke Suzuki 2019-12-13 21:27:51 PST
Created attachment 385678 [details]
Patch
Comment 11 Saam Barati 2019-12-16 12:28:36 PST
Comment on attachment 385678 [details]
Patch

r=me
Comment 12 Saam Barati 2019-12-16 12:29:02 PST
Comment on attachment 385678 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=385678&action=review

> Source/JavaScriptCore/runtime/ArrayBuffer.cpp:387
> +    m_neuteringWatchpointSet.fireAll(vm, "Array buffer was neutered");

is it worth keeping this in notifyIncommingReferencesOfTransfer?
Comment 13 Yusuke Suzuki 2019-12-16 14:16:04 PST
Comment on attachment 385678 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=385678&action=review

>> Source/JavaScriptCore/runtime/ArrayBuffer.cpp:387
>> +    m_neuteringWatchpointSet.fireAll(vm, "Array buffer was neutered");
> 
> is it worth keeping this in notifyIncommingReferencesOfTransfer?

Renamed it to `notifyNeutering` and add this firing into `notifyNeutering` method :)
Comment 14 Yusuke Suzuki 2019-12-16 14:17:36 PST
Committed r253576: <https://trac.webkit.org/changeset/253576>
Comment 15 Radar WebKit Bug Importer 2019-12-16 14:18:18 PST
<rdar://problem/57984773>