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

Issue 1084243005: [turbofan] Sanitize language mode for javascript operators. (Closed)

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

Description

[turbofan] Sanitize language mode for javascript operators. R=mstarzinger@chromium.org Committed: https://chromium.googlesource.com/v8/v8/+/f13f949361eb8531a15f1ba80a3f42044d16a52c

Patch Set 1 #

Total comments: 1
Unified diffs Side-by-side diffs Delta from patch set Stats (+201 lines, -136 lines) Patch
M src/compiler/js-operator.cc View 2 chunks +29 lines, -22 lines 1 comment Download
M src/globals.h View 2 chunks +16 lines, -0 lines 0 comments Download
M test/unittests/compiler/js-operator-unittest.cc View 6 chunks +156 lines, -113 lines 0 comments Download
M test/unittests/test-utils.h View 1 chunk +0 lines, -1 line 0 comments Download

Messages

Total messages: 11 (3 generated)
Benedikt Meurer
5 years, 7 months ago (2015-04-27 08:51:56 UTC) #1
Benedikt Meurer
Hey Michi, As discussed offline: Make this whole language mode thing more robust and less ...
5 years, 7 months ago (2015-04-27 08:53:02 UTC) #2
Michael Starzinger
LGTM. Thank you!
5 years, 7 months ago (2015-04-27 09:04:22 UTC) #3
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1084243005/1
5 years, 7 months ago (2015-04-27 09:04:45 UTC) #5
commit-bot: I haz the power
Patchset 1 (id:??) landed as https://crrev.com/f13f949361eb8531a15f1ba80a3f42044d16a52c Cr-Commit-Position: refs/heads/master@{#28059}
5 years, 7 months ago (2015-04-27 09:13:23 UTC) #7
Benedikt Meurer
Committed patchset #1 (id:1) manually as f13f949361eb8531a15f1ba80a3f42044d16a52c (presubmit successful).
5 years, 7 months ago (2015-04-27 09:13:24 UTC) #8
conradw
https://codereview.chromium.org/1084243005/diff/1/src/compiler/js-operator.cc File src/compiler/js-operator.cc (right): https://codereview.chromium.org/1084243005/diff/1/src/compiler/js-operator.cc#newcode281 src/compiler/js-operator.cc:281: Name##Operator<STRICT> k##Name##StrictOperator; \ This change means that operators which ...
5 years, 7 months ago (2015-04-27 10:23:53 UTC) #10
Benedikt Meurer
5 years, 7 months ago (2015-04-27 10:33:04 UTC) #11
Message was sent while issue was closed.
On 2015/04/27 10:23:53, conradw wrote:
> https://codereview.chromium.org/1084243005/diff/1/src/compiler/js-operator.cc
> File src/compiler/js-operator.cc (right):
> 
>
https://codereview.chromium.org/1084243005/diff/1/src/compiler/js-operator.cc...
> src/compiler/js-operator.cc:281: Name##Operator<STRICT>
k##Name##StrictOperator;
>                             \
> This change means that operators which behave identically in sloppy and strict
> mode have separate cached versions for the two modes. This seems odd,
especially
> since Store only caches sloppy and strict versions. Also, as it stands
> currently, none of the strict cached operators here are ever used by any code.

Yes. That's actually intentional. Otherwise you'll get odd behavior, i.e.

  OpParameter<LanguageMode>(javascript()->Operator(STRICT)) != STRICT

which I'm sure will cause trouble at some point, and is completely weird.

Powered by Google App Engine
This is Rietveld 408576698