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

Issue 732663003: Process two 32-bit digits as one 64-bit digit in bigint absAdd intrinsic on x64. (Closed)

Created:
6 years, 1 month ago by regis
Modified:
6 years, 1 month ago
Reviewers:
zra, Ivan Posva
CC:
reviews_dartlang.org, vm-dev_dartlang.org
Visibility:
Public.

Description

Process two 32-bit digits as one 64-bit digit in bigint absAdd and absSub intrinsic on x64. More to follow. Added assembler instructions and tests. R=zra@google.com Committed: https://code.google.com/p/dart/source/detail?r=41817

Patch Set 1 #

Total comments: 2

Patch Set 2 : #

Patch Set 3 : #

Patch Set 4 : #

Total comments: 6

Patch Set 5 : #

Patch Set 6 : #

Patch Set 7 : #

Unified diffs Side-by-side diffs Delta from patch set Stats (+404 lines, -61 lines) Patch
M runtime/lib/bigint.dart View 1 2 3 4 5 6 13 chunks +77 lines, -29 lines 0 comments Download
M runtime/vm/assembler_x64.h View 1 2 3 4 5 4 chunks +8 lines, -0 lines 0 comments Download
M runtime/vm/assembler_x64.cc View 1 2 3 4 5 4 chunks +74 lines, -0 lines 0 comments Download
M runtime/vm/assembler_x64_test.cc View 1 2 3 4 5 3 chunks +204 lines, -0 lines 0 comments Download
M runtime/vm/intrinsifier_x64.cc View 1 2 3 4 5 6 chunks +27 lines, -23 lines 0 comments Download
M runtime/vm/object.cc View 1 2 3 4 5 3 chunks +14 lines, -9 lines 0 comments Download

Messages

Total messages: 13 (3 generated)
zra
https://codereview.chromium.org/732663003/diff/1/runtime/vm/intrinsifier_x64.cc File runtime/vm/intrinsifier_x64.cc (right): https://codereview.chromium.org/732663003/diff/1/runtime/vm/intrinsifier_x64.cc#newcode868 runtime/vm/intrinsifier_x64.cc:868: __ incq(RDX); // Does not affect carry flag. Is ...
6 years, 1 month ago (2014-11-14 22:11:54 UTC) #2
regis
On 2014/11/14 22:11:54, zra wrote: > https://codereview.chromium.org/732663003/diff/1/runtime/vm/intrinsifier_x64.cc > File runtime/vm/intrinsifier_x64.cc (right): > > https://codereview.chromium.org/732663003/diff/1/runtime/vm/intrinsifier_x64.cc#newcode868 > ...
6 years, 1 month ago (2014-11-14 22:36:52 UTC) #3
regis
As suggested earlier, this (patch #2) works much better. The bigint Dart implementation guarantees that ...
6 years, 1 month ago (2014-11-14 23:42:30 UTC) #5
regis
iposva@chromium.org -> iposva@google.com
6 years, 1 month ago (2014-11-14 23:45:00 UTC) #7
regis
This is now ready for review. It was much simpler to modify the Dart code ...
6 years, 1 month ago (2014-11-18 18:38:29 UTC) #8
zra
Please add assembler tests for the new instructions. https://codereview.chromium.org/732663003/diff/60001/runtime/lib/bigint.dart File runtime/lib/bigint.dart (right): https://codereview.chromium.org/732663003/diff/60001/runtime/lib/bigint.dart#newcode215 runtime/lib/bigint.dart:215: for ...
6 years, 1 month ago (2014-11-18 19:04:46 UTC) #9
regis
PTAL And I painfully added assembler tests :-) Cheers, Regis https://codereview.chromium.org/732663003/diff/60001/runtime/lib/bigint.dart File runtime/lib/bigint.dart (right): https://codereview.chromium.org/732663003/diff/60001/runtime/lib/bigint.dart#newcode215 ...
6 years, 1 month ago (2014-11-18 23:19:54 UTC) #10
zra
lgtm! Thanks for adding the tests =)
6 years, 1 month ago (2014-11-18 23:24:39 UTC) #11
regis
Thanks!
6 years, 1 month ago (2014-11-19 00:12:01 UTC) #12
regis
6 years, 1 month ago (2014-11-19 00:12:30 UTC) #13
Message was sent while issue was closed.
Committed patchset #7 (id:120001) manually as r41817 (presubmit successful).

Powered by Google App Engine
This is Rietveld 408576698