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

Issue 345563007: Add Uint32 representation (Closed)

Created:
6 years, 6 months ago by Cutch
Modified:
6 years, 5 months ago
CC:
reviews_dartlang.org, vm-dev_dartlang.org
Visibility:
Public.

Description

Add Uint32 representation. - Add new representation: kUnboxedUint32. - Add BinaryUint32Op, UnaryUint32Op, ShiftUint32Op instructions. - Add new optimization pass which replaces Mint instructions with Uint32 instructions when possible. - IA32 completed. - ARM completed. R=fschneider@google.com, vegorov@google.com, zra@google.com Committed: https://code.google.com/p/dart/source/detail?r=38198

Patch Set 1 #

Total comments: 3

Patch Set 2 : #

Total comments: 3

Patch Set 3 : #

Total comments: 27

Patch Set 4 : #

Total comments: 29

Patch Set 5 : #

Total comments: 15

Patch Set 6 : #

Total comments: 20

Patch Set 7 : #

Total comments: 4

Patch Set 8 : #

Unified diffs Side-by-side diffs Delta from patch set Stats (+1874 lines, -25 lines) Patch
M runtime/vm/deopt_instructions.h View 1 2 1 chunk +2 lines, -0 lines 0 comments Download
M runtime/vm/deopt_instructions.cc View 1 2 3 4 4 chunks +89 lines, -5 lines 0 comments Download
M runtime/vm/flow_graph_allocator.cc View 1 2 3 4 1 chunk +3 lines, -0 lines 0 comments Download
M runtime/vm/flow_graph_optimizer.h View 1 2 3 4 5 6 2 chunks +4 lines, -0 lines 0 comments Download
M runtime/vm/flow_graph_optimizer.cc View 1 2 3 4 5 6 7 6 chunks +346 lines, -3 lines 0 comments Download
M runtime/vm/flow_graph_type_propagator.cc View 1 2 3 4 5 6 7 1 chunk +0 lines, -1 line 0 comments Download
M runtime/vm/il_printer.cc View 1 2 1 chunk +22 lines, -0 lines 0 comments Download
M runtime/vm/intermediate_language.h View 1 2 3 4 5 6 7 6 chunks +310 lines, -3 lines 0 comments Download
M runtime/vm/intermediate_language.cc View 1 2 3 4 5 6 7 6 chunks +79 lines, -9 lines 0 comments Download
M runtime/vm/intermediate_language_arm.cc View 1 2 3 4 5 6 7 3 chunks +319 lines, -2 lines 0 comments Download
M runtime/vm/intermediate_language_arm64.cc View 1 2 3 4 5 6 7 1 chunk +97 lines, -0 lines 0 comments Download
M runtime/vm/intermediate_language_ia32.cc View 1 2 3 4 5 6 7 3 chunks +316 lines, -2 lines 0 comments Download
M runtime/vm/intermediate_language_mips.cc View 1 2 3 4 5 6 7 1 chunk +97 lines, -0 lines 0 comments Download
M runtime/vm/intermediate_language_x64.cc View 1 2 3 4 5 6 7 1 chunk +97 lines, -0 lines 0 comments Download
M runtime/vm/locations.h View 1 2 3 4 1 chunk +1 line, -0 lines 0 comments Download
A tests/language/vm/uint32_add_test.dart View 1 2 3 4 5 1 chunk +46 lines, -0 lines 0 comments Download
A tests/language/vm/uint32_right_shift_test.dart View 1 2 3 4 5 1 chunk +20 lines, -0 lines 0 comments Download
A tests/language/vm/uint32_shift_test.dart View 1 2 3 4 5 1 chunk +26 lines, -0 lines 0 comments Download

Messages

Total messages: 19 (0 generated)
Cutch
PTAL
6 years, 6 months ago (2014-06-23 15:22:40 UTC) #1
Vyacheslav Egorov (Google)
Some preliminary issues: - & is removed but UnboxInteger(Constant(mask)) is left in the graph which ...
6 years, 6 months ago (2014-06-23 20:02:06 UTC) #2
Florian Schneider
My suggestion is to start smaller, but with a more generic approach: 1. Instead of ...
6 years, 6 months ago (2014-06-25 11:36:01 UTC) #3
Cutch
On 2014/06/25 11:36:01, Florian Schneider wrote: > My suggestion is to start smaller, but with ...
6 years, 5 months ago (2014-07-07 15:26:51 UTC) #4
Vyacheslav Egorov (Google)
This is certainly going the right way! Awesome. Much simpler and straightforward. Please see inline ...
6 years, 5 months ago (2014-07-07 16:16:04 UTC) #5
Cutch
PTAL. I've addressed all of your comments except for the renaming ones (will do that ...
6 years, 5 months ago (2014-07-07 22:34:29 UTC) #6
Florian Schneider
https://codereview.chromium.org/345563007/diff/60001/runtime/vm/compiler.cc File runtime/vm/compiler.cc (right): https://codereview.chromium.org/345563007/diff/60001/runtime/vm/compiler.cc#newcode458 runtime/vm/compiler.cc:458: optimizer.SelectIntegerInstructions(); I think this phase should be run as ...
6 years, 5 months ago (2014-07-08 12:24:29 UTC) #7
Vyacheslav Egorov (Google)
more comments. please add some tests. https://codereview.chromium.org/345563007/diff/60001/runtime/vm/flow_graph_optimizer.cc File runtime/vm/flow_graph_optimizer.cc (right): https://codereview.chromium.org/345563007/diff/60001/runtime/vm/flow_graph_optimizer.cc#newcode5323 runtime/vm/flow_graph_optimizer.cc:5323: if (def->IsShiftMintOp()) { ...
6 years, 5 months ago (2014-07-08 12:39:31 UTC) #8
Cutch
https://codereview.chromium.org/345563007/diff/60001/runtime/vm/compiler.cc File runtime/vm/compiler.cc (right): https://codereview.chromium.org/345563007/diff/60001/runtime/vm/compiler.cc#newcode458 runtime/vm/compiler.cc:458: optimizer.SelectIntegerInstructions(); On 2014/07/08 12:24:28, Florian Schneider wrote: > I ...
6 years, 5 months ago (2014-07-09 17:48:26 UTC) #9
Florian Schneider
https://codereview.chromium.org/345563007/diff/60001/runtime/vm/compiler.cc File runtime/vm/compiler.cc (right): https://codereview.chromium.org/345563007/diff/60001/runtime/vm/compiler.cc#newcode458 runtime/vm/compiler.cc:458: optimizer.SelectIntegerInstructions(); On 2014/07/09 17:48:25, Cutch wrote: > On 2014/07/08 ...
6 years, 5 months ago (2014-07-10 13:05:06 UTC) #10
Cutch
ARM port is completed now too. https://codereview.chromium.org/345563007/diff/60001/runtime/vm/compiler.cc File runtime/vm/compiler.cc (right): https://codereview.chromium.org/345563007/diff/60001/runtime/vm/compiler.cc#newcode458 runtime/vm/compiler.cc:458: optimizer.SelectIntegerInstructions(); On 2014/07/10 ...
6 years, 5 months ago (2014-07-10 17:12:54 UTC) #11
Cutch
+zra for ARM changes.
6 years, 5 months ago (2014-07-10 17:13:20 UTC) #12
Florian Schneider
Lgtm. https://codereview.chromium.org/345563007/diff/100001/runtime/vm/compiler.cc File runtime/vm/compiler.cc (right): https://codereview.chromium.org/345563007/diff/100001/runtime/vm/compiler.cc#newcode457 runtime/vm/compiler.cc:457: // TODO(johnmccutchan): Do integer instruction selection after Fine ...
6 years, 5 months ago (2014-07-11 15:33:58 UTC) #13
zra
https://codereview.chromium.org/345563007/diff/100001/runtime/vm/intermediate_language_arm.cc File runtime/vm/intermediate_language_arm.cc (right): https://codereview.chromium.org/345563007/diff/100001/runtime/vm/intermediate_language_arm.cc#newcode6333 runtime/vm/intermediate_language_arm.cc:6333: // Nothing to do. Move in to out. They ...
6 years, 5 months ago (2014-07-11 15:45:05 UTC) #14
Vyacheslav Egorov (Google)
lgtm https://codereview.chromium.org/345563007/diff/60001/runtime/vm/flow_graph_optimizer.cc File runtime/vm/flow_graph_optimizer.cc (right): https://codereview.chromium.org/345563007/diff/60001/runtime/vm/flow_graph_optimizer.cc#newcode9250 runtime/vm/flow_graph_optimizer.cc:9250: HandleBinaryOp(instr, instr->op_kind(), *instr->left(), *instr->right()); On 2014/07/09 17:48:25, Cutch ...
6 years, 5 months ago (2014-07-11 16:00:09 UTC) #15
Cutch
PTAL https://codereview.chromium.org/345563007/diff/60001/runtime/vm/flow_graph_optimizer.cc File runtime/vm/flow_graph_optimizer.cc (right): https://codereview.chromium.org/345563007/diff/60001/runtime/vm/flow_graph_optimizer.cc#newcode9250 runtime/vm/flow_graph_optimizer.cc:9250: HandleBinaryOp(instr, instr->op_kind(), *instr->left(), *instr->right()); On 2014/07/11 16:00:08, Vyacheslav ...
6 years, 5 months ago (2014-07-11 22:04:14 UTC) #16
zra
lgtm with small fixes. https://codereview.chromium.org/345563007/diff/120001/runtime/vm/intermediate_language_arm.cc File runtime/vm/intermediate_language_arm.cc (right): https://codereview.chromium.org/345563007/diff/120001/runtime/vm/intermediate_language_arm.cc#newcode6273 runtime/vm/intermediate_language_arm.cc:6273: Register left = locs()->in(0).reg(); const ...
6 years, 5 months ago (2014-07-11 22:42:47 UTC) #17
Cutch
https://codereview.chromium.org/345563007/diff/120001/runtime/vm/intermediate_language_arm.cc File runtime/vm/intermediate_language_arm.cc (right): https://codereview.chromium.org/345563007/diff/120001/runtime/vm/intermediate_language_arm.cc#newcode6496 runtime/vm/intermediate_language_arm.cc:6496: __ tst(value, Operand(kSmiTagMask)); On 2014/07/11 22:42:47, zra wrote: > ...
6 years, 5 months ago (2014-07-14 14:57:33 UTC) #18
Cutch
6 years, 5 months ago (2014-07-14 17:01:20 UTC) #19
Message was sent while issue was closed.
Committed patchset #8 manually as r38198 (presubmit successful).

Powered by Google App Engine
This is Rietveld 408576698