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

Issue 9395016: First part of new ICData infrastructure: use a wrapper object instead of an array. (Closed)

Created:
8 years, 10 months ago by srdjan
Modified:
8 years, 10 months ago
Reviewers:
regis
CC:
reviews_dartlang.org, vm-dev_dartlang.org
Visibility:
Public.

Description

ICData is now a wrapper object that refers to the calling function, target name, ic data array, etc. The old ICData C++ class that wrapped around an Array is removed. The advantage is that the ICData object remains the same, only its ic_data array object is being modified as classes are added.. TODO: store ICData-s into function so that the type feedback can be easily extracted (currently must traverse the unoptimized code). Committed: https://code.google.com/p/dart/source/detail?r=4417

Patch Set 1 #

Patch Set 2 : #

Patch Set 3 : #

Patch Set 4 : #

Patch Set 5 : #

Patch Set 6 : #

Patch Set 7 : #

Patch Set 8 : #

Patch Set 9 : #

Patch Set 10 : #

Patch Set 11 : #

Total comments: 10

Patch Set 12 : #

Unified diffs Side-by-side diffs Delta from patch set Stats (+512 lines, -540 lines) Patch
M runtime/vm/ast.h View 1 2 3 4 5 6 7 8 9 10 11 10 chunks +24 lines, -26 lines 0 comments Download
M runtime/vm/code_generator.cc View 1 2 3 4 5 6 7 8 9 10 11 8 chunks +12 lines, -19 lines 0 comments Download
M runtime/vm/code_generator_ia32.cc View 1 2 3 4 5 6 7 8 9 10 11 3 chunks +14 lines, -7 lines 0 comments Download
M runtime/vm/code_generator_x64.cc View 1 2 3 4 5 6 7 8 9 10 11 3 chunks +14 lines, -6 lines 0 comments Download
M runtime/vm/code_patcher.h View 1 2 3 4 5 6 7 8 9 10 11 2 chunks +2 lines, -5 lines 0 comments Download
M runtime/vm/code_patcher_arm.cc View 1 2 3 4 5 6 7 8 9 10 11 1 chunk +1 line, -7 lines 0 comments Download
M runtime/vm/code_patcher_ia32.cc View 1 2 3 4 5 6 7 8 9 10 11 4 chunks +9 lines, -17 lines 0 comments Download
M runtime/vm/code_patcher_ia32_test.cc View 1 2 3 4 5 6 7 8 9 10 11 3 chunks +13 lines, -20 lines 0 comments Download
M runtime/vm/code_patcher_x64.cc View 1 2 3 4 5 6 7 8 9 10 11 3 chunks +9 lines, -17 lines 0 comments Download
M runtime/vm/code_patcher_x64_test.cc View 1 2 3 4 5 6 7 8 9 10 11 3 chunks +14 lines, -20 lines 0 comments Download
M runtime/vm/compiler.cc View 1 2 3 4 5 6 7 8 9 10 11 2 chunks +4 lines, -4 lines 0 comments Download
D runtime/vm/ic_data.h View 1 2 3 4 5 6 7 8 9 10 11 1 chunk +0 lines, -81 lines 0 comments Download
D runtime/vm/ic_data.cc View 1 2 3 4 5 6 7 8 9 10 11 1 chunk +0 lines, -130 lines 0 comments Download
D runtime/vm/ic_data_test.cc View 1 2 3 4 5 6 7 8 9 10 11 1 chunk +0 lines, -75 lines 0 comments Download
M runtime/vm/object.h View 1 2 3 4 5 6 7 8 9 10 11 6 chunks +74 lines, -6 lines 0 comments Download
M runtime/vm/object.cc View 1 2 3 4 5 6 7 8 9 10 11 9 chunks +123 lines, -15 lines 0 comments Download
M runtime/vm/object_test.cc View 1 2 3 4 5 6 7 8 9 10 11 1 chunk +73 lines, -0 lines 0 comments Download
M runtime/vm/opt_code_generator_ia32.cc View 1 2 3 4 5 6 7 8 9 10 11 13 chunks +14 lines, -14 lines 0 comments Download
M runtime/vm/raw_object.h View 1 2 3 4 5 6 7 8 9 10 11 3 chunks +22 lines, -3 lines 0 comments Download
M runtime/vm/raw_object.cc View 1 2 3 4 5 6 7 8 9 10 11 1 chunk +9 lines, -0 lines 0 comments Download
M runtime/vm/raw_object_snapshot.cc View 1 2 3 4 5 6 7 8 9 10 11 2 chunks +19 lines, -2 lines 0 comments Download
M runtime/vm/stub_code_ia32.cc View 1 2 3 4 5 6 7 8 9 10 11 21 chunks +39 lines, -37 lines 0 comments Download
M runtime/vm/stub_code_x64.cc View 1 2 3 4 5 6 7 8 9 10 11 18 chunks +23 lines, -26 lines 0 comments Download
M runtime/vm/vm_sources.gypi View 1 2 3 4 5 6 7 8 9 10 11 1 chunk +0 lines, -3 lines 0 comments Download

Messages

Total messages: 3 (0 generated)
srdjan
The CL is not as big as it looks like :-). If you feel it ...
8 years, 10 months ago (2012-02-15 16:37:38 UTC) #1
regis
LGTM https://chromiumcodereview.appspot.com/9395016/diff/22001/runtime/vm/code_generator_ia32.cc File runtime/vm/code_generator_ia32.cc (right): https://chromiumcodereview.appspot.com/9395016/diff/22001/runtime/vm/code_generator_ia32.cc#newcode706 runtime/vm/code_generator_ia32.cc:706: // ECX : ic-data array. Remove "array" in ...
8 years, 10 months ago (2012-02-21 21:51:34 UTC) #2
srdjan
8 years, 10 months ago (2012-02-22 14:59:45 UTC) #3
https://chromiumcodereview.appspot.com/9395016/diff/22001/runtime/vm/code_gen...
File runtime/vm/code_generator_ia32.cc (right):

https://chromiumcodereview.appspot.com/9395016/diff/22001/runtime/vm/code_gen...
runtime/vm/code_generator_ia32.cc:706: // ECX : ic-data array.
On 2012/02/21 21:51:34, regis wrote:
> Remove "array" in comment?

Done.

https://chromiumcodereview.appspot.com/9395016/diff/22001/runtime/vm/code_gen...
File runtime/vm/code_generator_x64.cc (right):

https://chromiumcodereview.appspot.com/9395016/diff/22001/runtime/vm/code_gen...
runtime/vm/code_generator_x64.cc:706: // RBX : ic-data array.
On 2012/02/21 21:51:34, regis wrote:
> Remove "array" in comment?

Done.

https://chromiumcodereview.appspot.com/9395016/diff/22001/runtime/vm/code_pat...
File runtime/vm/code_patcher.h (right):

https://chromiumcodereview.appspot.com/9395016/diff/22001/runtime/vm/code_pat...
runtime/vm/code_patcher.h:18: class RawArray;
On 2012/02/21 21:51:34, regis wrote:
> Is RawArray still needed?

Removed

https://chromiumcodereview.appspot.com/9395016/diff/22001/runtime/vm/object.h
File runtime/vm/object.h (right):

https://chromiumcodereview.appspot.com/9395016/diff/22001/runtime/vm/object.h...
runtime/vm/object.h:3622: intptr_t num_args_tested);
On 2012/02/21 21:51:34, regis wrote:
> We usually list the New method last, just before the private section.

Done.

https://chromiumcodereview.appspot.com/9395016/diff/22001/runtime/vm/object.h...
runtime/vm/object.h:3669: private:
On 2012/02/21 21:51:34, regis wrote:
> Many classes just use "value" as the formal parameter name in setters. But not
> all of them, so I do not really care.

Changing to value

Powered by Google App Engine
This is Rietveld 408576698