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

Issue 2069923004: Short Circuit Evaluation (Closed)

Created:
4 years, 6 months ago by manasijm
Modified:
4 years, 5 months ago
CC:
native-client-reviews_googlegroups.com
Base URL:
https://chromium.googlesource.com/native_client/pnacl-subzero.git@master
Target Ref:
refs/heads/master
Visibility:
Public.

Description

Short Circuit Evaluation Split Nodes whenever an early jump is possible by short circuiting boolean operations. Nodes are split after conservatively checking for side effects, which include definition of multi block variables, function calls and instructions involving memory. BUG=None R=stichnot@chromium.org Committed: https://gerrit.chromium.org/gerrit/gitweb?p=native_client/pnacl-subzero.git;a=commit;h=45f51a2675e8367a2d7ce90e5b63e161da668856

Patch Set 1 #

Total comments: 19

Patch Set 2 : Add test, order nodes properly and address other issues. #

Patch Set 3 : Update comment and remove redundant header #

Total comments: 19

Patch Set 4 : Address style issues. #

Total comments: 10

Patch Set 5 : Address formatting issues apparently missed by 'make format' #

Unified diffs Side-by-side diffs Delta from patch set Stats (+301 lines, -16 lines) Patch
M src/IceCfg.h View 1 chunk +1 line, -0 lines 0 comments Download
M src/IceCfg.cpp View 1 2 3 4 1 chunk +63 lines, -0 lines 0 comments Download
M src/IceCfgNode.h View 1 chunk +4 lines, -0 lines 0 comments Download
M src/IceCfgNode.cpp View 1 2 3 4 2 chunks +168 lines, -0 lines 0 comments Download
M src/IceClFlags.def View 1 2 3 1 chunk +4 lines, -1 line 0 comments Download
M src/IceInst.h View 1 2 3 5 chunks +8 lines, -12 lines 0 comments Download
M src/IceInst.cpp View 3 chunks +6 lines, -3 lines 0 comments Download
M src/IceTargetLoweringX86BaseImpl.h View 1 2 3 4 1 chunk +4 lines, -0 lines 0 comments Download
M src/IceTimerTree.def View 1 chunk +1 line, -0 lines 0 comments Download
A tests_lit/llvm2ice_tests/short-circuit.ll View 1 2 3 4 1 chunk +42 lines, -0 lines 0 comments Download

Messages

Total messages: 12 (2 generated)
manasijm
4 years, 6 months ago (2016-06-15 23:04:26 UTC) #2
John
please add tests to your CL. lit tests are dumb tests, but they are really ...
4 years, 6 months ago (2016-06-16 13:41:11 UTC) #3
Jim Stichnoth
https://codereview.chromium.org/2069923004/diff/1/src/IceCfg.cpp File src/IceCfg.cpp (right): https://codereview.chromium.org/2069923004/diff/1/src/IceCfg.cpp#newcode660 src/IceCfg.cpp:660: auto Nodes = this->getNodes(); Cfg::getNodes() returns "const NodeList &". ...
4 years, 6 months ago (2016-06-20 18:41:41 UTC) #4
manasijm
https://codereview.chromium.org/2069923004/diff/1/src/IceCfgNode.cpp File src/IceCfgNode.cpp (right): https://codereview.chromium.org/2069923004/diff/1/src/IceCfgNode.cpp#newcode1490 src/IceCfgNode.cpp:1490: void CfgNode::removeInEdge(CfgNode *In) { On 2016/06/16 13:41:10, John wrote: ...
4 years, 6 months ago (2016-06-20 20:45:36 UTC) #5
Jim Stichnoth
https://codereview.chromium.org/2069923004/diff/40001/src/IceCfg.cpp File src/IceCfg.cpp (right): https://codereview.chromium.org/2069923004/diff/40001/src/IceCfg.cpp#newcode680 src/IceCfg.cpp:680: CfgVector<CfgNode *> Stack{Node}; Can you use NodeList instead of ...
4 years, 5 months ago (2016-06-27 19:44:41 UTC) #6
manasijm
https://codereview.chromium.org/2069923004/diff/40001/src/IceCfg.cpp File src/IceCfg.cpp (right): https://codereview.chromium.org/2069923004/diff/40001/src/IceCfg.cpp#newcode680 src/IceCfg.cpp:680: CfgVector<CfgNode *> Stack{Node}; On 2016/06/27 19:44:40, stichnot wrote: > ...
4 years, 5 months ago (2016-06-27 22:00:40 UTC) #7
Jim Stichnoth
https://codereview.chromium.org/2069923004/diff/60001/src/IceCfg.cpp File src/IceCfg.cpp (right): https://codereview.chromium.org/2069923004/diff/60001/src/IceCfg.cpp#newcode663 src/IceCfg.cpp:663: //(Similar logic for AND, jump to false instead of ...
4 years, 5 months ago (2016-06-27 22:41:59 UTC) #8
manasijm
https://codereview.chromium.org/2069923004/diff/60001/src/IceTargetLoweringX86BaseImpl.h File src/IceTargetLoweringX86BaseImpl.h (right): https://codereview.chromium.org/2069923004/diff/60001/src/IceTargetLoweringX86BaseImpl.h#newcode563 src/IceTargetLoweringX86BaseImpl.h:563: On 2016/06/27 22:41:59, stichnot wrote: > I would remove ...
4 years, 5 months ago (2016-06-27 22:56:32 UTC) #9
Jim Stichnoth
lgtm
4 years, 5 months ago (2016-06-27 23:02:33 UTC) #10
manasijm
4 years, 5 months ago (2016-06-27 23:12:41 UTC) #12
Message was sent while issue was closed.
Committed patchset #5 (id:80001) manually as
45f51a2675e8367a2d7ce90e5b63e161da668856 (presubmit successful).

Powered by Google App Engine
This is Rietveld 408576698