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

Issue 11421056: Re-apply issue 11308169: GVN getInterceptor and use the interceptor constant when the type is known. (Closed)

Created:
8 years, 1 month ago by ngeoffray
Modified:
8 years ago
CC:
reviews_dartlang.org
Visibility:
Public.

Description

Re-apply issue 11308169: GVN getInterceptor and use the interceptor constant when the type is known. Committed: https://code.google.com/p/dart/source/detail?r=15380

Patch Set 1 #

Patch Set 2 : #

Total comments: 2

Patch Set 3 : #

Total comments: 10

Patch Set 4 : #

Patch Set 5 : #

Unified diffs Side-by-side diffs Delta from patch set Stats (+187 lines, -73 lines) Patch
M sdk/lib/_internal/compiler/implementation/elements/elements.dart View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M sdk/lib/_internal/compiler/implementation/js_backend/backend.dart View 1 2 3 4 7 chunks +45 lines, -43 lines 0 comments Download
M sdk/lib/_internal/compiler/implementation/lib/interceptors.dart View 1 2 3 1 chunk +20 lines, -8 lines 0 comments Download
M sdk/lib/_internal/compiler/implementation/ssa/codegen.dart View 1 2 3 1 chunk +3 lines, -9 lines 0 comments Download
M sdk/lib/_internal/compiler/implementation/ssa/nodes.dart View 1 2 3 1 chunk +2 lines, -0 lines 0 comments Download
M sdk/lib/_internal/compiler/implementation/ssa/optimize.dart View 1 2 3 6 chunks +58 lines, -5 lines 0 comments Download
M sdk/lib/_internal/compiler/implementation/ssa/types.dart View 1 2 3 12 chunks +58 lines, -7 lines 0 comments Download

Messages

Total messages: 8 (0 generated)
ngeoffray
PTAL. It turns out the optimization revealed two bugs in our code base: 1) The ...
8 years, 1 month ago (2012-11-23 10:27:56 UTC) #1
ngeoffray
Also, FYI: The patch set 1 contains the original change. Patch set 2 contains the ...
8 years, 1 month ago (2012-11-23 10:28:47 UTC) #2
ahe
I'm really confused about the whole intersection of types. https://codereview.chromium.org/11421056/diff/4002/sdk/lib/_internal/compiler/implementation/ssa/types.dart File sdk/lib/_internal/compiler/implementation/ssa/types.dart (right): https://codereview.chromium.org/11421056/diff/4002/sdk/lib/_internal/compiler/implementation/ssa/types.dart#newcode91 sdk/lib/_internal/compiler/implementation/ssa/types.dart:91: ...
8 years, 1 month ago (2012-11-23 11:32:54 UTC) #3
ngeoffray
https://codereview.chromium.org/11421056/diff/4002/sdk/lib/_internal/compiler/implementation/ssa/types.dart File sdk/lib/_internal/compiler/implementation/ssa/types.dart (right): https://codereview.chromium.org/11421056/diff/4002/sdk/lib/_internal/compiler/implementation/ssa/types.dart#newcode91 sdk/lib/_internal/compiler/implementation/ssa/types.dart:91: bool isBoundedObject() => false; On 2012/11/23 11:32:54, ahe wrote: ...
8 years, 1 month ago (2012-11-23 11:49:50 UTC) #4
ngeoffray
Friendly ping :-)
8 years ago (2012-11-27 09:41:10 UTC) #5
ahe
LGTM https://chromiumcodereview.appspot.com/11421056/diff/13001/sdk/lib/_internal/compiler/implementation/js_backend/backend.dart File sdk/lib/_internal/compiler/implementation/js_backend/backend.dart (right): https://chromiumcodereview.appspot.com/11421056/diff/13001/sdk/lib/_internal/compiler/implementation/js_backend/backend.dart#newcode463 sdk/lib/_internal/compiler/implementation/js_backend/backend.dart:463: staticTypeMap[element] = newTypes; Seems like the above lines ...
8 years ago (2012-11-27 10:19:11 UTC) #6
ahe
https://chromiumcodereview.appspot.com/11421056/diff/13001/sdk/lib/_internal/compiler/implementation/js_backend/backend.dart File sdk/lib/_internal/compiler/implementation/js_backend/backend.dart (right): https://chromiumcodereview.appspot.com/11421056/diff/13001/sdk/lib/_internal/compiler/implementation/js_backend/backend.dart#newcode505 sdk/lib/_internal/compiler/implementation/js_backend/backend.dart:505: selectorTypeMap[selector] = newTypes; On 2012/11/27 10:19:11, ahe wrote: > ...
8 years ago (2012-11-27 10:19:57 UTC) #7
ngeoffray
8 years ago (2012-11-27 10:41:04 UTC) #8
Thanks Peter!

https://chromiumcodereview.appspot.com/11421056/diff/13001/sdk/lib/_internal/...
File sdk/lib/_internal/compiler/implementation/js_backend/backend.dart (right):

https://chromiumcodereview.appspot.com/11421056/diff/13001/sdk/lib/_internal/...
sdk/lib/_internal/compiler/implementation/js_backend/backend.dart:463:
staticTypeMap[element] = newTypes;
On 2012/11/27 10:19:11, ahe wrote:
> Seems like the above lines should be a helper method (which returns true if
the
> types changed).

Good refactoring suggestion. Done.

https://chromiumcodereview.appspot.com/11421056/diff/13001/sdk/lib/_internal/...
sdk/lib/_internal/compiler/implementation/js_backend/backend.dart:505:
selectorTypeMap[selector] = newTypes;
On 2012/11/27 10:19:11, ahe wrote:
> This method could be reused here.

Done.

https://chromiumcodereview.appspot.com/11421056/diff/13001/sdk/lib/_internal/...
File sdk/lib/_internal/compiler/implementation/ssa/optimize.dart (right):

https://chromiumcodereview.appspot.com/11421056/diff/13001/sdk/lib/_internal/...
sdk/lib/_internal/compiler/implementation/ssa/optimize.dart:269: HInstruction
fromNativeToDynamicInvocation(HInvokeStatic node,
On 2012/11/27 10:19:11, ahe wrote:
> What does native mean in this context?

It's for a primitive instruction (HIndex, Hadd, ...). I renamed the method to
fromPrimitiveInstructionToDynamicInvocation.

https://chromiumcodereview.appspot.com/11421056/diff/13001/sdk/lib/_internal/...
File sdk/lib/_internal/compiler/implementation/ssa/types.dart (right):

https://chromiumcodereview.appspot.com/11421056/diff/13001/sdk/lib/_internal/...
sdk/lib/_internal/compiler/implementation/ssa/types.dart:785: class
HBoundedPotentialPrimitiveType extends HBoundedType {
On 2012/11/27 10:19:11, ahe wrote:
> How about providing a toString method?

Done.

Powered by Google App Engine
This is Rietveld 408576698