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

Issue 36073002: Separate HTypeConversion checked type from output type. (Closed)

Created:
7 years, 2 months ago by sra1
Modified:
7 years, 1 month ago
Reviewers:
ngeoffray
CC:
reviews_dartlang.org, karlklose
Visibility:
Public.

Description

Separate HTypeConversion checked type from output type. This mostly improves checked mode code. By separating the types, we can propagate a more precise type. Example: var a = ... ? 1 : 'hello'; // {int,String} ... int i = a; // {Null,int) * {int,String} = {int} int j = i + 1; // no receiver type check R=ngeoffray@google.com Committed: https://code.google.com/p/dart/source/detail?r=29176

Patch Set 1 : #

Total comments: 4

Patch Set 2 : #

Patch Set 3 : #

Unified diffs Side-by-side diffs Delta from patch set Stats (+35 lines, -30 lines) Patch
M sdk/lib/_internal/compiler/implementation/ssa/codegen.dart View 1 2 5 chunks +16 lines, -15 lines 0 comments Download
M sdk/lib/_internal/compiler/implementation/ssa/nodes.dart View 1 5 chunks +5 lines, -1 line 0 comments Download
M sdk/lib/_internal/compiler/implementation/ssa/types_propagation.dart View 1 1 chunk +14 lines, -14 lines 0 comments Download

Messages

Total messages: 4 (0 generated)
sra1
This helps checked mode code size and performance. Checked DeltaBliue is +50%, but still far ...
7 years, 2 months ago (2013-10-22 22:56:16 UTC) #1
ngeoffray
LGTM https://codereview.chromium.org/36073002/diff/60001/sdk/lib/_internal/compiler/implementation/ssa/codegen.dart File sdk/lib/_internal/compiler/implementation/ssa/codegen.dart (right): https://codereview.chromium.org/36073002/diff/60001/sdk/lib/_internal/compiler/implementation/ssa/codegen.dart#newcode2482 sdk/lib/_internal/compiler/implementation/ssa/codegen.dart:2482: && (checkedType.isInteger() || checkedType.isIndexablePrimitive(compiler)); Line too long. https://codereview.chromium.org/36073002/diff/60001/sdk/lib/_internal/compiler/implementation/ssa/types_propagation.dart ...
7 years, 2 months ago (2013-10-24 06:50:55 UTC) #2
sra1
Committed patchset #3 manually as r29176 (presubmit successful).
7 years, 2 months ago (2013-10-24 15:59:37 UTC) #3
sra1
7 years, 1 month ago (2013-10-25 03:48:53 UTC) #4
Message was sent while issue was closed.
https://chromiumcodereview.appspot.com/36073002/diff/60001/sdk/lib/_internal/...
File sdk/lib/_internal/compiler/implementation/ssa/codegen.dart (right):

https://chromiumcodereview.appspot.com/36073002/diff/60001/sdk/lib/_internal/...
sdk/lib/_internal/compiler/implementation/ssa/codegen.dart:2482: &&
(checkedType.isInteger() || checkedType.isIndexablePrimitive(compiler));
On 2013/10/24 06:50:55, ngeoffray wrote:
> Line too long.

Done.

Powered by Google App Engine
This is Rietveld 408576698