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

Issue 12038013: Reland r17365. (Closed)

Created:
7 years, 11 months ago by Vyacheslav Egorov (Google)
Modified:
7 years, 11 months ago
CC:
reviews_dartlang.org
Visibility:
Public.

Description

Reland r17365. Introduce InvokeMathCFunction that can be used to directly invoke mathematical function provided by runtime. Use it to unconditionally inline _Double.pow. Use it to inline floor, ceil, round, truncate, round when SSE4.1 is not available. Perform representation selection phase after constant propagation to minimize boxing. Add support for enter instruction in the x64 disassembler. Add test for optimized pow and fix compilation on windows. R=fschneider@google.com BUG=dart:8002 Committed: https://code.google.com/p/dart/source/detail?r=17393

Patch Set 1 #

Patch Set 2 : replace enter with EnterFrame #

Total comments: 7
Unified diffs Side-by-side diffs Delta from patch set Stats (+306 lines, -39 lines) Patch
M runtime/vm/compiler.cc View 1 chunk +8 lines, -6 lines 0 comments Download
M runtime/vm/disassembler_x64.cc View 1 chunk +7 lines, -0 lines 0 comments Download
M runtime/vm/flow_graph_optimizer.h View 1 chunk +2 lines, -0 lines 0 comments Download
M runtime/vm/flow_graph_optimizer.cc View 3 chunks +60 lines, -30 lines 2 comments Download
M runtime/vm/il_printer.cc View 1 chunk +6 lines, -0 lines 0 comments Download
M runtime/vm/intermediate_language.h View 4 chunks +74 lines, -1 line 1 comment Download
M runtime/vm/intermediate_language.cc View 2 chunks +68 lines, -0 lines 0 comments Download
M runtime/vm/intermediate_language_arm.cc View 1 chunk +11 lines, -0 lines 0 comments Download
M runtime/vm/intermediate_language_ia32.cc View 1 1 chunk +27 lines, -0 lines 0 comments Download
M runtime/vm/intermediate_language_x64.cc View 1 1 chunk +34 lines, -0 lines 2 comments Download
M runtime/vm/locations.h View 2 chunks +2 lines, -2 lines 0 comments Download
M tests/language/math_vm_test.dart View 1 chunk +7 lines, -0 lines 2 comments Download

Messages

Total messages: 4 (0 generated)
Vyacheslav Egorov (Google)
7 years, 11 months ago (2013-01-21 18:59:53 UTC) #1
Florian Schneider
LGTM. https://codereview.chromium.org/12038013/diff/14/runtime/vm/intermediate_language_x64.cc File runtime/vm/intermediate_language_x64.cc (right): https://codereview.chromium.org/12038013/diff/14/runtime/vm/intermediate_language_x64.cc#newcode2427 runtime/vm/intermediate_language_x64.cc:2427: __ ReserveAlignedFrameSpace(kDoubleSize * InputCount()); Should be ReserveAlignedFrameSpace(0). https://codereview.chromium.org/12038013/diff/14/tests/language/math_vm_test.dart ...
7 years, 11 months ago (2013-01-22 11:22:34 UTC) #2
Vyacheslav Egorov (Google)
Thanks for the review. Relanding. https://codereview.chromium.org/12038013/diff/14/runtime/vm/intermediate_language_x64.cc File runtime/vm/intermediate_language_x64.cc (right): https://codereview.chromium.org/12038013/diff/14/runtime/vm/intermediate_language_x64.cc#newcode2427 runtime/vm/intermediate_language_x64.cc:2427: __ ReserveAlignedFrameSpace(kDoubleSize * InputCount()); ...
7 years, 11 months ago (2013-01-22 11:36:31 UTC) #3
srdjan
7 years, 11 months ago (2013-01-22 21:19:41 UTC) #4
Message was sent while issue was closed.
DBC

https://codereview.chromium.org/12038013/diff/14/runtime/vm/flow_graph_optimi...
File runtime/vm/flow_graph_optimizer.cc (right):

https://codereview.chromium.org/12038013/diff/14/runtime/vm/flow_graph_optimi...
runtime/vm/flow_graph_optimizer.cc:1294: MethodRecognizer::Kind recognized_kind)
{
Indent 4 spaces

https://codereview.chromium.org/12038013/diff/14/runtime/vm/flow_graph_optimi...
runtime/vm/flow_graph_optimizer.cc:1380: if
(!CPUFeatures::double_truncate_round_supported()) {
I prefer to test for positive instead of for negative as IMHO it makes code more
readable.

https://codereview.chromium.org/12038013/diff/14/runtime/vm/intermediate_lang...
File runtime/vm/intermediate_language.h (right):

https://codereview.chromium.org/12038013/diff/14/runtime/vm/intermediate_lang...
runtime/vm/intermediate_language.h:4067: : inputs_(inputs), locs_(NULL),
recognized_kind_(recognized_kind) {
indent 4 spaces

Powered by Google App Engine
This is Rietveld 408576698