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

Issue 2812233002: [turbofan] Use unreliable LOAD_IC feedback for Array.prototype.push. (Closed)

Created:
3 years, 8 months ago by Benedikt Meurer
Modified:
3 years, 8 months ago
Reviewers:
Jarin
CC:
v8-reviews_googlegroups.com
Target Ref:
refs/heads/master
Project:
v8
Visibility:
Public.

Description

[turbofan] Use unreliable LOAD_IC feedback for Array.prototype.push. Add the notion of reliable vs. unreliable receiver map information to the NodeProperties::InferReceiverMaps machinery. The information is considered reliable here if the maps are known to be valid based on the effect chain, and unreliable if there was a side-effect in between that might have changed the receiver map. Use this unreliable information for Array.prototype.push, guarded by either stability dependencies or map checks, which might present a potential deoptimization loop, which is very unlikely, but still needs fixing in the future. This is important to optimize calls to push even in cases like this array.push(something.func()); where we have a side-effect (the call to something.func) between the load of array.push and the actual call. R=jarin@chromium.org BUG=v8:5267, v8:6241 Review-Url: https://codereview.chromium.org/2812233002 Cr-Commit-Position: refs/heads/master@{#44595} Committed: https://chromium.googlesource.com/v8/v8/+/1fceaf9f8c971b5ca41b67dc41487278d8259748

Patch Set 1 #

Unified diffs Side-by-side diffs Delta from patch set Stats (+72 lines, -20 lines) Patch
M src/compiler/js-builtin-reducer.cc View 1 chunk +25 lines, -3 lines 0 comments Download
M src/compiler/js-call-reducer.cc View 1 chunk +3 lines, -1 line 0 comments Download
M src/compiler/js-inlining.cc View 1 chunk +5 lines, -1 line 0 comments Download
M src/compiler/js-native-context-specialization.cc View 1 chunk +13 lines, -1 line 0 comments Download
M src/compiler/node-properties.h View 1 chunk +8 lines, -3 lines 0 comments Download
M src/compiler/node-properties.cc View 4 chunks +18 lines, -11 lines 0 comments Download

Messages

Total messages: 11 (7 generated)
Benedikt Meurer
3 years, 8 months ago (2017-04-12 05:33:45 UTC) #1
Jarin
lgtm
3 years, 8 months ago (2017-04-12 06:31:17 UTC) #6
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/2812233002/1
3 years, 8 months ago (2017-04-12 06:31:36 UTC) #8
commit-bot: I haz the power
3 years, 8 months ago (2017-04-12 06:33:06 UTC) #11
Message was sent while issue was closed.
Committed patchset #1 (id:1) as
https://chromium.googlesource.com/v8/v8/+/1fceaf9f8c971b5ca41b67dc41487278d82...

Powered by Google App Engine
This is Rietveld 408576698