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

Issue 2751543003: VM: Simplify lowering of is-tests. (Closed)

Created:
3 years, 9 months ago by Florian Schneider
Modified:
3 years, 9 months ago
CC:
reviews_dartlang.org, vm-dev_dartlang.org
Target Ref:
refs/heads/master
Visibility:
Public.

Description

VM: Simplify lowering of is-tests. Remove special-cases for known types (int, String, num, double, Smi). The generic lowering into an instance call (_simpleInstanceOf) works just fine for these predefined types. Also, remove parameter for negated is-tests. Instead insert explicit negation when. building the flow graph. R=rmacnak@google.com Committed: https://github.com/dart-lang/sdk/commit/066123e037b530ae2c073b61601d518ed70d6efa

Patch Set 1 #

Patch Set 2 : fix dbc build #

Unified diffs Side-by-side diffs Delta from patch set Stats (+63 lines, -294 lines) Patch
M runtime/lib/object.cc View 3 chunks +2 lines, -62 lines 0 comments Download
M runtime/lib/object_patch.dart View 2 chunks +1 line, -7 lines 0 comments Download
M runtime/vm/aot_optimizer.cc View 5 chunks +13 lines, -45 lines 0 comments Download
M runtime/vm/bootstrap_natives.h View 1 chunk +1 line, -6 lines 0 comments Download
M runtime/vm/constant_propagator.cc View 2 chunks +2 lines, -3 lines 0 comments Download
M runtime/vm/constants_dbc.h View 1 2 chunks +4 lines, -5 lines 0 comments Download
M runtime/vm/flow_graph_builder.cc View 2 chunks +6 lines, -38 lines 0 comments Download
M runtime/vm/flow_graph_compiler.h View 1 chunk +0 lines, -1 line 0 comments Download
M runtime/vm/flow_graph_compiler_arm.cc View 2 chunks +3 lines, -12 lines 0 comments Download
M runtime/vm/flow_graph_compiler_arm64.cc View 2 chunks +3 lines, -12 lines 0 comments Download
M runtime/vm/flow_graph_compiler_ia32.cc View 2 chunks +3 lines, -12 lines 0 comments Download
M runtime/vm/flow_graph_compiler_mips.cc View 2 chunks +3 lines, -10 lines 0 comments Download
M runtime/vm/flow_graph_compiler_x64.cc View 2 chunks +3 lines, -12 lines 0 comments Download
M runtime/vm/il_printer.cc View 1 chunk +1 line, -2 lines 0 comments Download
M runtime/vm/intermediate_language.h View 3 chunks +1 line, -7 lines 0 comments Download
M runtime/vm/intermediate_language_arm.cc View 1 chunk +1 line, -2 lines 0 comments Download
M runtime/vm/intermediate_language_arm64.cc View 1 chunk +1 line, -2 lines 0 comments Download
M runtime/vm/intermediate_language_dbc.cc View 1 1 chunk +1 line, -1 line 0 comments Download
M runtime/vm/intermediate_language_ia32.cc View 1 chunk +1 line, -2 lines 0 comments Download
M runtime/vm/intermediate_language_mips.cc View 1 chunk +1 line, -2 lines 0 comments Download
M runtime/vm/intermediate_language_x64.cc View 1 chunk +1 line, -2 lines 0 comments Download
M runtime/vm/jit_optimizer.cc View 4 chunks +10 lines, -40 lines 0 comments Download
M runtime/vm/simulator_dbc.cc View 1 2 chunks +1 line, -4 lines 0 comments Download
M runtime/vm/symbols.h View 1 chunk +0 lines, -5 lines 0 comments Download

Messages

Total messages: 7 (3 generated)
Florian Schneider
3 years, 9 months ago (2017-03-13 22:50:57 UTC) #2
rmacnak
lgtm Noting that this means Lars's simpleInstanceOf optimization applies to these types as well.
3 years, 9 months ago (2017-03-13 23:46:18 UTC) #3
Florian Schneider
Committed patchset #2 (id:20001) manually as 066123e037b530ae2c073b61601d518ed70d6efa (presubmit successful).
3 years, 9 months ago (2017-03-13 23:49:07 UTC) #5
Vyacheslav Egorov (Google)
3 years, 9 months ago (2017-03-14 11:32:41 UTC) #7
Message was sent while issue was closed.
Hi!

I unfortunately had to revert this because vm-kernel-* bots were all completely
broken by this commit.

I think kernel_to_il translation needs an update similar to one done in the
flow_graph_builder.cc

You can repro failues and run tests like this:

$ ./tools/build.py -m release -a x64 runtime_kernel
$ ./tools/test.py -m release -a x64 -c dartk co19 language kernel

Powered by Google App Engine
This is Rietveld 408576698