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

Issue 1721103003: [turbofan] Introduce DeoptimizeIf And DeoptimizeUnless common operators. (Closed)

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

Description

[turbofan] Introduce DeoptimizeIf And DeoptimizeUnless common operators. These macro operators represent a conditional eager deoptimization exit without explicit branching, which greatly reduces overhead of both scheduling and register allocation, and thereby greatly reduces overall compilation time, esp. when there are a lot of eager deoptimization exits. R=jarin@chromium.org Committed: https://crrev.com/c129aa4d39364bf78d93bec8c16811bfde040a37 Cr-Commit-Position: refs/heads/master@{#34239}

Patch Set 1 #

Patch Set 2 : Fix #

Total comments: 6

Patch Set 3 : REBASE #

Patch Set 4 : Add comments #

Unified diffs Side-by-side diffs Delta from patch set Stats (+937 lines, -654 lines) Patch
M src/compiler/arm/code-generator-arm.cc View 3 chunks +6 lines, -1 line 0 comments Download
M src/compiler/arm/instruction-selector-arm.cc View 11 chunks +57 lines, -22 lines 0 comments Download
M src/compiler/arm64/instruction-selector-arm64.cc View 1 12 chunks +146 lines, -116 lines 0 comments Download
M src/compiler/branch-elimination.h View 3 chunks +7 lines, -0 lines 0 comments Download
M src/compiler/branch-elimination.cc View 1 2 3 4 chunks +45 lines, -1 line 0 comments Download
M src/compiler/code-generator.h View 4 chunks +8 lines, -3 lines 0 comments Download
M src/compiler/code-generator.cc View 5 chunks +66 lines, -26 lines 0 comments Download
M src/compiler/code-generator-impl.h View 1 chunk +13 lines, -0 lines 0 comments Download
M src/compiler/common-operator.h View 1 chunk +2 lines, -0 lines 0 comments Download
M src/compiler/common-operator.cc View 1 chunk +13 lines, -13 lines 0 comments Download
M src/compiler/common-operator-reducer.h View 1 chunk +1 line, -0 lines 0 comments Download
M src/compiler/common-operator-reducer.cc View 2 chunks +34 lines, -0 lines 0 comments Download
M src/compiler/ia32/instruction-selector-ia32.cc View 10 chunks +55 lines, -23 lines 0 comments Download
M src/compiler/instruction.cc View 1 chunk +2 lines, -0 lines 0 comments Download
M src/compiler/instruction-codes.h View 1 chunk +6 lines, -1 line 0 comments Download
M src/compiler/instruction-selector.h View 2 chunks +13 lines, -0 lines 0 comments Download
M src/compiler/instruction-selector.cc View 3 chunks +33 lines, -13 lines 0 comments Download
M src/compiler/instruction-selector-impl.h View 2 chunks +28 lines, -9 lines 0 comments Download
M src/compiler/js-call-reducer.h View 2 chunks +3 lines, -6 lines 0 comments Download
M src/compiler/js-call-reducer.cc View 4 chunks +8 lines, -40 lines 0 comments Download
M src/compiler/js-generic-lowering.cc View 1 chunk +2 lines, -0 lines 0 comments Download
M src/compiler/js-global-object-specialization.cc View 3 chunks +6 lines, -30 lines 0 comments Download
M src/compiler/js-native-context-specialization.h View 1 chunk +0 lines, -4 lines 0 comments Download
M src/compiler/js-native-context-specialization.cc View 1 2 3 21 chunks +142 lines, -206 lines 0 comments Download
M src/compiler/mips/instruction-selector-mips.cc View 9 chunks +43 lines, -18 lines 0 comments Download
M src/compiler/mips64/instruction-selector-mips64.cc View 12 chunks +48 lines, -23 lines 0 comments Download
M src/compiler/opcodes.h View 1 chunk +2 lines, -0 lines 0 comments Download
M src/compiler/pipeline.cc View 1 chunk +1 line, -1 line 0 comments Download
M src/compiler/simplified-lowering.cc View 1 chunk +6 lines, -0 lines 0 comments Download
M src/compiler/typer.cc View 2 chunks +4 lines, -0 lines 0 comments Download
M src/compiler/verifier.cc View 1 chunk +5 lines, -0 lines 0 comments Download
M src/compiler/x64/instruction-selector-x64.cc View 14 chunks +129 lines, -98 lines 0 comments Download
M test/mjsunit/mjsunit.status View 1 2 1 chunk +3 lines, -0 lines 0 comments Download

Messages

Total messages: 14 (5 generated)
Benedikt Meurer
4 years, 10 months ago (2016-02-23 08:11:06 UTC) #1
Benedikt Meurer
Hey Jaro, Here's the baby. It looks like two Kraken benchmarks actually benefitted from the ...
4 years, 10 months ago (2016-02-23 08:14:09 UTC) #2
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1721103003/1 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1721103003/1
4 years, 10 months ago (2016-02-23 09:06:47 UTC) #4
commit-bot: I haz the power
Dry run: Try jobs failed on following builders: v8_linux_arm64_rel on tryserver.v8 (JOB_FAILED, http://build.chromium.org/p/tryserver.v8/builders/v8_linux_arm64_rel/builds/15721)
4 years, 10 months ago (2016-02-23 10:47:59 UTC) #6
Jarin
lgtm. (Not very pretty, but gets the job done, I suppose.) https://codereview.chromium.org/1721103003/diff/20001/src/compiler/branch-elimination.cc File src/compiler/branch-elimination.cc (right): ...
4 years, 10 months ago (2016-02-24 08:56:39 UTC) #7
Benedikt Meurer
https://codereview.chromium.org/1721103003/diff/20001/src/compiler/branch-elimination.cc File src/compiler/branch-elimination.cc (right): https://codereview.chromium.org/1721103003/diff/20001/src/compiler/branch-elimination.cc#newcode102 src/compiler/branch-elimination.cc:102: return Replace(control); On 2016/02/24 08:56:38, Jarin wrote: > Perhaps ...
4 years, 10 months ago (2016-02-24 09:04:56 UTC) #8
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1721103003/60001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1721103003/60001
4 years, 10 months ago (2016-02-24 09:05:10 UTC) #11
commit-bot: I haz the power
Committed patchset #4 (id:60001)
4 years, 10 months ago (2016-02-24 09:49:20 UTC) #12
commit-bot: I haz the power
4 years, 10 months ago (2016-02-24 09:49:58 UTC) #14
Message was sent while issue was closed.
Patchset 4 (id:??) landed as
https://crrev.com/c129aa4d39364bf78d93bec8c16811bfde040a37
Cr-Commit-Position: refs/heads/master@{#34239}

Powered by Google App Engine
This is Rietveld 408576698