|
|
Created:
4 years, 3 months ago by Benedikt Meurer Modified:
4 years, 3 months ago Reviewers:
epertoso 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] Improve fast case of JSInstanceOf lowering.
For O instanceof C, we only need to check the instance type while
iterating the prototypes of O instead of checking both the instance
type and the access check bit of the map. This is because we have
the explicit range of "special object types", which include both
JSProxy as well as the global object and proxy and all API objects
that might have access checks or interceptors. Also restructure the
loop exits somewhat to ensure that the branch cloning gets a chance
to actually eliminate the bit materialization for the results.
R=jarin@chromium.org
Committed: https://crrev.com/b5629a108c1a95d923f4e42b2d5a61fb944a00fa
Cr-Commit-Position: refs/heads/master@{#38860}
Patch Set 1 #
Total comments: 2
Patch Set 2 : REBASE #Patch Set 3 : Renaming based on comment #
Created: 4 years, 3 months ago
Messages
Total messages: 25 (16 generated)
The CQ bit was checked by bmeurer@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: This issue passed the CQ dry run.
Hey Jaro, Here's some small improvement for instanceof, helps EarleyBoyer quite a bit. Please take a look. Thanks, Benedikt
The CQ bit was checked by bmeurer@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
bmeurer@chromium.org changed reviewers: + epertoso@chromium.org - jarin@chromium.org
Hey Enrico, Jaro is overloaded with bugs/reviews. Please take a look. Thanks, Benedikt
lgtm https://codereview.chromium.org/2263273003/diff/1/src/compiler/js-typed-lower... File src/compiler/js-typed-lowering.cc (right): https://codereview.chromium.org/2263273003/diff/1/src/compiler/js-typed-lower... src/compiler/js-typed-lowering.cc:1221: Node* vtrue1; nit: I think that putting the following block (up to line 1232) between braces would make the code slightly more readable.
https://codereview.chromium.org/2263273003/diff/1/src/compiler/js-typed-lower... File src/compiler/js-typed-lowering.cc (right): https://codereview.chromium.org/2263273003/diff/1/src/compiler/js-typed-lower... src/compiler/js-typed-lowering.cc:1221: Node* vtrue1; That wouldn't work because we need the Nodes below.
The CQ bit was unchecked by bmeurer@chromium.org
The CQ bit was checked by bmeurer@chromium.org
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by bmeurer@chromium.org
The CQ bit was checked by bmeurer@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by bmeurer@chromium.org
The CQ bit was checked by bmeurer@chromium.org
The patchset sent to the CQ was uploaded after l-g-t-m from epertoso@chromium.org Link to the patchset: https://codereview.chromium.org/2263273003/#ps40001 (title: "Renaming based on comment")
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
Message was sent while issue was closed.
Committed patchset #3 (id:40001)
Message was sent while issue was closed.
Description was changed from ========== [turbofan] Improve fast case of JSInstanceOf lowering. For O instanceof C, we only need to check the instance type while iterating the prototypes of O instead of checking both the instance type and the access check bit of the map. This is because we have the explicit range of "special object types", which include both JSProxy as well as the global object and proxy and all API objects that might have access checks or interceptors. Also restructure the loop exits somewhat to ensure that the branch cloning gets a chance to actually eliminate the bit materialization for the results. R=jarin@chromium.org ========== to ========== [turbofan] Improve fast case of JSInstanceOf lowering. For O instanceof C, we only need to check the instance type while iterating the prototypes of O instead of checking both the instance type and the access check bit of the map. This is because we have the explicit range of "special object types", which include both JSProxy as well as the global object and proxy and all API objects that might have access checks or interceptors. Also restructure the loop exits somewhat to ensure that the branch cloning gets a chance to actually eliminate the bit materialization for the results. R=jarin@chromium.org Committed: https://crrev.com/b5629a108c1a95d923f4e42b2d5a61fb944a00fa Cr-Commit-Position: refs/heads/master@{#38860} ==========
Message was sent while issue was closed.
Patchset 3 (id:??) landed as https://crrev.com/b5629a108c1a95d923f4e42b2d5a61fb944a00fa Cr-Commit-Position: refs/heads/master@{#38860} |