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

Issue 2074533002: Simplify and improve optimization of is-tests in the precompiler. (Closed)

Created:
4 years, 6 months ago by Florian Schneider
Modified:
4 years, 6 months ago
CC:
reviews_dartlang.org, vm-dev_dartlang.org
Base URL:
git@github.com:dart-lang/sdk.git@master
Target Ref:
refs/heads/master
Visibility:
Public.

Description

Simplify and improve optimization of is-tests in the precompiler. The optimizer now also deals with is-checks for num, double, _Smi in the same way as it did for int before. This CL eliminates many is-tests of constants that appear after inlining. Also, make a better distinction between deoptimizing and non-deoptimizing cases when replacing is-tests. e.g. InstanceOfInstr can't cause eager deoptimization. Also, improve tracing output when running e.g. --trace-inlining Minor fix in raw_object.h. BUG= R=vegorov@google.com Committed: https://github.com/dart-lang/sdk/commit/220b040c4a88086dc4125fd2cfbe610d2db3dac9

Patch Set 1 #

Total comments: 1
Unified diffs Side-by-side diffs Delta from patch set Stats (+71 lines, -75 lines) Patch
M runtime/vm/aot_optimizer.h View 1 chunk +1 line, -1 line 0 comments Download
M runtime/vm/aot_optimizer.cc View 10 chunks +51 lines, -59 lines 0 comments Download
M runtime/vm/constant_propagator.cc View 5 chunks +13 lines, -8 lines 0 comments Download
M runtime/vm/flow_graph_inliner.cc View 1 chunk +1 line, -1 line 0 comments Download
M runtime/vm/flow_graph_range_analysis.cc View 2 chunks +4 lines, -2 lines 0 comments Download
M runtime/vm/raw_object.h View 1 chunk +1 line, -4 lines 1 comment Download

Messages

Total messages: 6 (2 generated)
Florian Schneider
4 years, 6 months ago (2016-06-15 23:26:09 UTC) #2
Florian Schneider
This also fixes a performance regression introduced in https://github.com/dart-lang/sdk/commit/9ee5dfb2451e294555f8b3320a1580f9bc315859
4 years, 6 months ago (2016-06-16 00:57:07 UTC) #3
Vyacheslav Egorov (Google)
lgtm https://codereview.chromium.org/2074533002/diff/1/runtime/vm/raw_object.h File runtime/vm/raw_object.h (left): https://codereview.chromium.org/2074533002/diff/1/runtime/vm/raw_object.h#oldcode2284 runtime/vm/raw_object.h:2284: return (index == kOneByteStringCid || I wonder how ...
4 years, 6 months ago (2016-06-16 08:37:38 UTC) #4
Florian Schneider
4 years, 6 months ago (2016-06-16 15:54:36 UTC) #6
Message was sent while issue was closed.
Committed patchset #1 (id:1) manually as
220b040c4a88086dc4125fd2cfbe610d2db3dac9 (presubmit successful).

Powered by Google App Engine
This is Rietveld 408576698