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

Issue 1650493002: [crankshaft] Make the for-in slow path compatible with the other compilers. (Closed)

Created:
4 years, 10 months ago by Benedikt Meurer
Modified:
4 years, 10 months ago
Reviewers:
Yang
CC:
v8-reviews_googlegroups.com
Base URL:
https://chromium.googlesource.com/v8/v8.git@master
Target Ref:
refs/pending/heads/master
Project:
v8
Visibility:
Public.

Description

[crankshaft] Make the for-in slow path compatible with the other compilers. So far the for-in slow path in Crankshaft unconditionally called %ForInFilter for every iteration of the for-in loop, without paying attention to the possible enum cache equipped receiver map. So even though we iterate the enum cache FixedArray associated with the map we don't check the map, but always go to %ForInFilter. This would be perfectly fine if the enum cache FixedArray would be immutable, but due to some funny GC/runtime interaction kicking in, the enum cache can be right trimmed while we are iterating it, and the only way to detect this is to ensure that we check the map when accessing the enum cache. BUG=v8:3650, v8:4715 LOG=n Committed: https://crrev.com/3251a03e81b99bcab20d9d2a7c3fb899b0b64ffb Cr-Commit-Position: refs/heads/master@{#33599}

Patch Set 1 #

Unified diffs Side-by-side diffs Delta from patch set Stats (+70 lines, -10 lines) Patch
M src/crankshaft/hydrogen.cc View 2 chunks +22 lines, -10 lines 0 comments Download
A test/mjsunit/regress/regress-4715.js View 1 chunk +48 lines, -0 lines 0 comments Download

Messages

Total messages: 10 (5 generated)
Benedikt Meurer
Hey Yang, This is the Crankshaft fix for for-in that Jakob was looking into yesterday. ...
4 years, 10 months ago (2016-01-29 06:35:36 UTC) #3
Yang
On 2016/01/29 06:35:36, Benedikt Meurer wrote: > Hey Yang, > > This is the Crankshaft ...
4 years, 10 months ago (2016-01-29 06:43:18 UTC) #4
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1650493002/1 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1650493002/1
4 years, 10 months ago (2016-01-29 06:43:46 UTC) #6
commit-bot: I haz the power
Committed patchset #1 (id:1)
4 years, 10 months ago (2016-01-29 07:50:16 UTC) #8
commit-bot: I haz the power
4 years, 10 months ago (2016-01-29 07:51:06 UTC) #10
Message was sent while issue was closed.
Patchset 1 (id:??) landed as
https://crrev.com/3251a03e81b99bcab20d9d2a7c3fb899b0b64ffb
Cr-Commit-Position: refs/heads/master@{#33599}

Powered by Google App Engine
This is Rietveld 408576698