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

Issue 1420093005: [turbofan] Sanitize typing rules for function calls. (Closed)

Created:
5 years, 1 month ago by Benedikt Meurer
Modified:
5 years, 1 month ago
Reviewers:
Jarin, rossberg
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

[turbofan] Sanitize typing rules for function calls. Currently we (mostly) infer FunctionType for JSFunction constants, and match the FunctionType in the typing rule for JSCallFunction. This has several drawbacks for JavaScript, especially we don't have Constant types for global functions (i.e. String, Object, Reflect and friends). Plus the FunctionType magic doesn't actually buy us anything. So this changes the typing rule for HeapConstant constant to actually infer Constant types for JSFunction objects and moves the recognition of builtin functions to the typing rule for JSCallFunction. Also adapts the specialized lowering in JSTypedLowering to Constant functions instead of FunctionType, which has the additional advantage that we can do the receiver wrapping/converting based on the (known) SharedFunctionInfo. R=jarin@chromium.org Committed: https://crrev.com/3fbbfc38c22d123c629722a7c29cee952c7ad1d2 Cr-Commit-Position: refs/heads/master@{#31553}

Patch Set 1 #

Unified diffs Side-by-side diffs Delta from patch set Stats (+92 lines, -92 lines) Patch
M src/compiler/js-typed-lowering.cc View 2 chunks +28 lines, -14 lines 0 comments Download
M src/compiler/node-properties.h View 1 chunk +1 line, -0 lines 0 comments Download
M src/compiler/node-properties.cc View 1 chunk +7 lines, -0 lines 0 comments Download
M src/compiler/typer.cc View 2 chunks +55 lines, -60 lines 0 comments Download
M src/zone-type-cache.h View 1 chunk +1 line, -18 lines 0 comments Download

Messages

Total messages: 8 (1 generated)
Benedikt Meurer
5 years, 1 month ago (2015-10-26 09:00:00 UTC) #1
Benedikt Meurer
Hey Jaro, As discussed offline, FunctionType is not used anymore (also partially reverting a change ...
5 years, 1 month ago (2015-10-26 09:01:31 UTC) #2
Jarin
lgtm, cc'ing Andreas.
5 years, 1 month ago (2015-10-26 10:04:25 UTC) #3
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1420093005/1 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1420093005/1
5 years, 1 month ago (2015-10-26 10:04:45 UTC) #5
rossberg
LGTM. Do we still need FunctionType at all?
5 years, 1 month ago (2015-10-26 10:20:29 UTC) #6
commit-bot: I haz the power
Committed patchset #1 (id:1)
5 years, 1 month ago (2015-10-26 10:28:41 UTC) #7
commit-bot: I haz the power
5 years, 1 month ago (2015-10-26 10:29:07 UTC) #8
Message was sent while issue was closed.
Patchset 1 (id:??) landed as
https://crrev.com/3fbbfc38c22d123c629722a7c29cee952c7ad1d2
Cr-Commit-Position: refs/heads/master@{#31553}

Powered by Google App Engine
This is Rietveld 408576698