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

Issue 64483002: Streamline code generator for branches and comparisons. (Closed)

Created:
7 years, 1 month ago by fschneider
Modified:
7 years, 1 month ago
CC:
reviews_dartlang.org, vm-dev_dartlang.org
Visibility:
Public.

Description

Streamline code generator for branches and comparisons. This is another refactoring step. It turn all comparisons to be generated after the same pattern and removes duplicated code from each of the different comparisons (smi, mint, double, etc.) A comparison as an expression now follows the same patterns as a comparison inside a branch. It just adds a common epilogue to materialize the boolean result. In another CL this common epilogue will be generated by reusing the IfThenElse IL instruction. R=kmillikin@google.com Committed: https://code.google.com/p/dart/source/detail?r=30243

Patch Set 1 #

Total comments: 4

Patch Set 2 : added other platformd, comments addressed #

Total comments: 1
Unified diffs Side-by-side diffs Delta from patch set Stats (+459 lines, -708 lines) Patch
M runtime/vm/flow_graph_compiler.h View 1 2 chunks +13 lines, -0 lines 0 comments Download
M runtime/vm/flow_graph_compiler.cc View 1 1 chunk +16 lines, -3 lines 0 comments Download
M runtime/vm/intermediate_language_arm.cc View 1 8 chunks +108 lines, -168 lines 1 comment Download
M runtime/vm/intermediate_language_ia32.cc View 1 12 chunks +113 lines, -196 lines 0 comments Download
M runtime/vm/intermediate_language_mips.cc View 1 11 chunks +109 lines, -204 lines 0 comments Download
M runtime/vm/intermediate_language_x64.cc View 1 9 chunks +100 lines, -137 lines 0 comments Download

Messages

Total messages: 6 (0 generated)
Florian Schneider
This is ia32 only. I'll port this after addressing comments for this approach.
7 years, 1 month ago (2013-11-07 14:14:08 UTC) #1
Kevin Millikin (Google)
Nice simplification. I like the approach, didn't double check super closely yet for correctness. https://codereview.chromium.org/64483002/diff/1/runtime/vm/intermediate_language_ia32.cc ...
7 years, 1 month ago (2013-11-07 14:34:08 UTC) #2
Florian Schneider
I'll go ahead and add the other platforms. https://codereview.chromium.org/64483002/diff/1/runtime/vm/intermediate_language_ia32.cc File runtime/vm/intermediate_language_ia32.cc (right): https://codereview.chromium.org/64483002/diff/1/runtime/vm/intermediate_language_ia32.cc#newcode339 runtime/vm/intermediate_language_ia32.cc:339: if ...
7 years, 1 month ago (2013-11-08 12:00:20 UTC) #3
Florian Schneider
Added other plaforms. This CL does not change the generated code for any of the ...
7 years, 1 month ago (2013-11-11 13:30:41 UTC) #4
Kevin Millikin (Google)
Yes, lgtm.
7 years, 1 month ago (2013-11-13 17:44:24 UTC) #5
Florian Schneider
7 years, 1 month ago (2013-11-13 18:21:38 UTC) #6
Message was sent while issue was closed.
Committed patchset #2 manually as r30243 (presubmit successful).

Powered by Google App Engine
This is Rietveld 408576698