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

Issue 11275283: Restructure JSObject::SetElement for performance. (Closed)

Created:
8 years, 1 month ago by rossberg
Modified:
8 years, 1 month ago
Reviewers:
rafaelw, Toon Verwaest
CC:
v8-dev, adamk, rafaelw
Visibility:
Public.

Description

Restructure JSObject::SetElement for performance. Wins back ~1500 points on Octane/Gameboy that we lost with https://codereview.chromium.org/11365111 (CL 12900), presumably by lowering register pressure and/or handlification overhead. Hopefully benefits other regressions as well. R=verwaest@chromium.org BUG= Committed: https://code.google.com/p/v8/source/detail?r=12949

Patch Set 1 #

Total comments: 8
Unified diffs Side-by-side diffs Delta from patch set Stats (+39 lines, -43 lines) Patch
M src/objects.cc View 4 chunks +39 lines, -43 lines 8 comments Download

Messages

Total messages: 7 (0 generated)
rossberg
8 years, 1 month ago (2012-11-13 13:08:49 UTC) #1
rafaelw
https://codereview.chromium.org/11275283/diff/1/src/objects.cc File src/objects.cc (right): https://codereview.chromium.org/11275283/diff/1/src/objects.cc#newcode10310 src/objects.cc:10310: return HasIndexedInterceptor() consider factoring out into inline static? https://codereview.chromium.org/11275283/diff/1/src/objects.cc#newcode10344 ...
8 years, 1 month ago (2012-11-13 13:18:44 UTC) #2
Toon Verwaest
lgtm with nit https://codereview.chromium.org/11275283/diff/1/src/objects.cc File src/objects.cc (right): https://codereview.chromium.org/11275283/diff/1/src/objects.cc#newcode10310 src/objects.cc:10310: return HasIndexedInterceptor() +1 On 2012/11/13 13:18:44, ...
8 years, 1 month ago (2012-11-13 13:38:08 UTC) #3
rafaelw
https://codereview.chromium.org/11275283/diff/1/src/objects.cc File src/objects.cc (right): https://codereview.chromium.org/11275283/diff/1/src/objects.cc#newcode10344 src/objects.cc:10344: if (old_attributes == ABSENT) { You are correct. Sorry. ...
8 years, 1 month ago (2012-11-13 13:41:25 UTC) #4
rossberg
https://chromiumcodereview.appspot.com/11275283/diff/1/src/objects.cc File src/objects.cc (right): https://chromiumcodereview.appspot.com/11275283/diff/1/src/objects.cc#newcode10310 src/objects.cc:10310: return HasIndexedInterceptor() On 2012/11/13 13:38:08, Toon Verwaest wrote: > ...
8 years, 1 month ago (2012-11-13 13:47:44 UTC) #5
rafaelw
https://chromiumcodereview.appspot.com/11275283/diff/1/src/objects.cc File src/objects.cc (right): https://chromiumcodereview.appspot.com/11275283/diff/1/src/objects.cc#newcode10310 src/objects.cc:10310: return HasIndexedInterceptor() I'm not understanding why it wouldn't work, ...
8 years, 1 month ago (2012-11-13 14:53:01 UTC) #6
rossberg
8 years, 1 month ago (2012-11-13 15:33:13 UTC) #7
https://chromiumcodereview.appspot.com/11275283/diff/1/src/objects.cc
File src/objects.cc (right):

https://chromiumcodereview.appspot.com/11275283/diff/1/src/objects.cc#newcode...
src/objects.cc:10310: return HasIndexedInterceptor()
On 2012/11/13 14:53:01, rafaelw wrote:
> I'm not understanding why it wouldn't work, but I defer to your judgement
here.

Thing is, I could only factor it out in form of a handlified version, but then I
likely lose part of the performance I just tried to regain on the "normal" path.

Powered by Google App Engine
This is Rietveld 408576698