Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(361)

Issue 2854373002: Move delete-last-fast-property code from CSA to C++ (Closed)

Created:
3 years, 7 months ago by Jakob Kummerow
Modified:
3 years, 7 months ago
Reviewers:
Igor Sheludko
CC:
v8-reviews_googlegroups.com
Target Ref:
refs/heads/master
Project:
v8
Visibility:
Public.

Description

Move delete-last-fast-property code from CSA to C++ When deleting the most recently added fast property from an object by undoing its last map transition, we must clear any recorded slots. This can only be done in C++, so this functionality must move out of the stub. Also update a CHECK in the JSObject verifier to allow backing stores sticking around after such property deletions. BUG=chromium:716912, chromium:714981 Review-Url: https://codereview.chromium.org/2854373002 Cr-Commit-Position: refs/heads/master@{#45069} Committed: https://chromium.googlesource.com/v8/v8/+/6cb995b936d63ce651273ff420d3dbf80ff71f13

Patch Set 1 #

Total comments: 7

Patch Set 2 : addressed comments #

Unified diffs Side-by-side diffs Delta from patch set Stats (+127 lines, -86 lines) Patch
M src/builtins/builtins-internal-gen.cc View 2 chunks +3 lines, -80 lines 0 comments Download
M src/objects-debug.cc View 1 chunk +10 lines, -6 lines 0 comments Download
M src/runtime/runtime-object.cc View 1 1 chunk +59 lines, -0 lines 0 comments Download
A test/mjsunit/regress/regress-crbug-714981.js View 1 chunk +32 lines, -0 lines 0 comments Download
A test/mjsunit/regress/regress-crbug-716912.js View 1 chunk +23 lines, -0 lines 0 comments Download

Messages

Total messages: 15 (9 generated)
Jakob Kummerow
PTAL. This is a straightforward port of logic from CSA to C++, with one addition: ...
3 years, 7 months ago (2017-05-03 12:26:50 UTC) #2
Igor Sheludko
lgtm with nits: https://codereview.chromium.org/2854373002/diff/1/src/runtime/runtime-object.cc File src/runtime/runtime-object.cc (right): https://codereview.chromium.org/2854373002/diff/1/src/runtime/runtime-object.cc#newcode134 src/runtime/runtime-object.cc:134: if (map->instance_type() <= LAST_SPECIAL_RECEIVER_TYPE) return false; ...
3 years, 7 months ago (2017-05-03 14:39:25 UTC) #3
Jakob Kummerow
Thanks for the review, feedback addressed. I've also done the "is_stable()" change we discussed offline. ...
3 years, 7 months ago (2017-05-03 14:49:27 UTC) #4
Igor Sheludko
https://codereview.chromium.org/2854373002/diff/1/src/runtime/runtime-object.cc File src/runtime/runtime-object.cc (right): https://codereview.chromium.org/2854373002/diff/1/src/runtime/runtime-object.cc#newcode173 src/runtime/runtime-object.cc:173: if (index.is_inobject() && !map->IsUnboxedDoubleField(index)) { On 2017/05/03 14:49:27, Jakob ...
3 years, 7 months ago (2017-05-03 14:53:26 UTC) #7
commit-bot: I haz the power
CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2854373002/20001
3 years, 7 months ago (2017-05-03 15:49:15 UTC) #12
commit-bot: I haz the power
3 years, 7 months ago (2017-05-03 15:50:57 UTC) #15
Message was sent while issue was closed.
Committed patchset #2 (id:20001) as
https://chromium.googlesource.com/v8/v8/+/6cb995b936d63ce651273ff420d3dbf80ff...

Powered by Google App Engine
This is Rietveld 408576698