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

Issue 11573044: Inline Doubles truncate and round. (Closed)

Created:
8 years ago by srdjan
Modified:
7 years, 11 months ago
Reviewers:
Florian Schneider
CC:
reviews_dartlang.org
Visibility:
Public.

Description

Inline Doubles truncate and round. Committed: https://code.google.com/p/dart/source/detail?r=16983

Patch Set 1 #

Patch Set 2 : #

Patch Set 3 : #

Patch Set 4 : #

Patch Set 5 : #

Total comments: 6

Patch Set 6 : #

Patch Set 7 : #

Patch Set 8 : #

Total comments: 16

Patch Set 9 : #

Patch Set 10 : #

Patch Set 11 : #

Patch Set 12 : #

Unified diffs Side-by-side diffs Delta from patch set Stats (+462 lines, -25 lines) Patch
M runtime/vm/assembler_ia32.h View 1 2 3 4 5 6 7 8 2 chunks +9 lines, -0 lines 0 comments Download
M runtime/vm/assembler_ia32.cc View 1 2 3 4 5 6 7 8 9 10 2 chunks +45 lines, -0 lines 0 comments Download
M runtime/vm/assembler_ia32_test.cc View 1 2 3 4 5 6 7 8 9 10 1 chunk +64 lines, -0 lines 0 comments Download
M runtime/vm/assembler_x64.h View 1 2 3 4 5 6 7 8 3 chunks +13 lines, -0 lines 0 comments Download
M runtime/vm/assembler_x64.cc View 1 2 3 4 5 6 7 8 9 10 3 chunks +85 lines, -0 lines 0 comments Download
M runtime/vm/assembler_x64_test.cc View 1 2 3 4 5 6 7 8 9 10 11 2 chunks +79 lines, -0 lines 0 comments Download
M runtime/vm/disassembler_ia32.cc View 1 2 3 4 5 6 7 8 1 chunk +16 lines, -0 lines 0 comments Download
M runtime/vm/flow_graph_optimizer.cc View 1 2 3 4 5 6 7 8 9 10 11 2 chunks +37 lines, -15 lines 0 comments Download
M runtime/vm/intermediate_language.h View 1 2 3 4 5 6 7 8 4 chunks +46 lines, -0 lines 0 comments Download
M runtime/vm/intermediate_language.cc View 1 2 3 4 5 6 7 8 1 chunk +5 lines, -0 lines 0 comments Download
M runtime/vm/intermediate_language_ia32.cc View 1 2 3 4 5 6 7 8 1 chunk +27 lines, -0 lines 0 comments Download
M runtime/vm/intermediate_language_x64.cc View 1 2 3 4 5 6 7 8 1 chunk +27 lines, -0 lines 0 comments Download
M tests/language/arithmetic_test.dart View 1 2 3 4 5 6 7 8 9 1 chunk +9 lines, -10 lines 0 comments Download

Messages

Total messages: 8 (0 generated)
srdjan
8 years ago (2012-12-15 00:23:58 UTC) #1
srdjan
Rounding is incorrect, will fix it later.
8 years ago (2012-12-15 00:59:34 UTC) #2
srdjan
All tests are passing. Please have a look.
8 years ago (2012-12-18 21:46:06 UTC) #3
Florian Schneider
https://codereview.chromium.org/11573044/diff/32001/runtime/vm/assembler_ia32.cc File runtime/vm/assembler_ia32.cc (right): https://codereview.chromium.org/11573044/diff/32001/runtime/vm/assembler_ia32.cc#newcode1762 runtime/vm/assembler_ia32.cc:1762: roundsd(dst, dst, Assembler::kRoundToZero); truncate(x+0.5) does not work for some ...
7 years, 11 months ago (2013-01-08 14:24:04 UTC) #4
srdjan
Please have another look. Added tests, fixed ia32 disassembler and addressed comments. https://codereview.chromium.org/11573044/diff/32001/runtime/vm/assembler_ia32.cc File runtime/vm/assembler_ia32.cc ...
7 years, 11 months ago (2013-01-10 22:35:52 UTC) #5
Florian Schneider
LGTM with comments. https://codereview.chromium.org/11573044/diff/51001/runtime/vm/assembler_ia32.cc File runtime/vm/assembler_ia32.cc (right): https://codereview.chromium.org/11573044/diff/51001/runtime/vm/assembler_ia32.cc#newcode1750 runtime/vm/assembler_ia32.cc:1750: // 0.5 > dst ? For ...
7 years, 11 months ago (2013-01-11 09:49:30 UTC) #6
srdjan
Made code simpler ( x + 0.5) does not work for 9007199254740991. Using roundToNearest except ...
7 years, 11 months ago (2013-01-11 19:41:08 UTC) #7
srdjan
7 years, 11 months ago (2013-01-11 19:48:21 UTC) #8
https://codereview.chromium.org/11573044/diff/51001/runtime/vm/assembler_x64_...
File runtime/vm/assembler_x64_test.cc (right):

https://codereview.chromium.org/11573044/diff/51001/runtime/vm/assembler_x64_...
runtime/vm/assembler_x64_test.cc:1882: EXPECT_EQ(-1.0, res);
On 2013/01/11 09:49:30, Florian Schneider wrote:
> Add the same test cases as on ia32 here as well.

Done.

https://codereview.chromium.org/11573044/diff/51001/runtime/vm/flow_graph_opt...
File runtime/vm/flow_graph_optimizer.cc (right):

https://codereview.chromium.org/11573044/diff/51001/runtime/vm/flow_graph_opt...
runtime/vm/flow_graph_optimizer.cc:1250: (recognized_kind ==
MethodRecognizer::kDoubleRound)) {
On 2013/01/11 09:49:30, Florian Schneider wrote:
> You need to check if SSE 4.1 is supported here:
CPUFeatures::sse4_1_supported())

Done.

Powered by Google App Engine
This is Rietveld 408576698