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

Issue 10827249: - Register canonical names for internal VM classes and get rid of the method GetSingletonClassName (Closed)

Created:
8 years, 4 months ago by siva
Modified:
8 years, 4 months ago
Reviewers:
srdjan, Ivan Posva
CC:
reviews_dartlang.org, vm-dev_dartlang.org
Visibility:
Public.

Description

1. Register canonical names for internal VM classes and get rid of the method GetSingletonClassName 2. Create the empty_array object as a singleton in the VM isolate and remove it from the object store 3. Remove eager population of the functions_cache entry in the class. This results in a pretty impressive reduction of the initial isolate heap size: - on IA32 it goes from 1331k to 1071k - on X64 it goes from 2431k to 1911k - snapshot size also is reduced from 859219 bytes to 789147 bytes. (as a follow up change I will consider completely removing functions cache) Committed: https://code.google.com/p/dart/source/detail?r=10535

Patch Set 1 #

Patch Set 2 : #

Total comments: 2

Patch Set 3 : #

Patch Set 4 : #

Unified diffs Side-by-side diffs Delta from patch set Stats (+159 lines, -122 lines) Patch
M vm/class_finalizer_test.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M vm/code_descriptors.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M vm/code_generator.cc View 1 2 3 2 chunks +7 lines, -0 lines 0 comments Download
M vm/heap_profiler.cc View 1 2 3 1 chunk +2 lines, -7 lines 0 comments Download
M vm/object.h View 1 2 3 6 chunks +6 lines, -5 lines 0 comments Download
M vm/object.cc View 1 2 3 16 chunks +83 lines, -95 lines 0 comments Download
M vm/object_store.h View 1 2 3 2 chunks +0 lines, -4 lines 0 comments Download
M vm/object_store.cc View 1 2 3 1 chunk +0 lines, -1 line 0 comments Download
M vm/object_test.cc View 1 2 3 5 chunks +6 lines, -4 lines 0 comments Download
M vm/parser.cc View 1 2 3 2 chunks +4 lines, -4 lines 0 comments Download
M vm/raw_object.h View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
M vm/snapshot.cc View 1 2 3 2 chunks +9 lines, -0 lines 0 comments Download
M vm/snapshot_ids.h View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
M vm/stub_code_ia32.cc View 1 2 3 1 chunk +3 lines, -0 lines 0 comments Download
M vm/stub_code_x64.cc View 1 2 3 1 chunk +3 lines, -0 lines 0 comments Download
M vm/symbols.h View 1 2 3 1 chunk +31 lines, -0 lines 0 comments Download
M vm/symbols.cc View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download

Messages

Total messages: 3 (0 generated)
siva
8 years, 4 months ago (2012-08-09 18:10:41 UTC) #1
srdjan
LGTM https://chromiumcodereview.appspot.com/10827249/diff/10001/vm/object.h File vm/object.h (right): https://chromiumcodereview.appspot.com/10827249/diff/10001/vm/object.h#newcode238 vm/object.h:238: static RawArray* empty_array() { return empty_array_; } Maybe ...
8 years, 4 months ago (2012-08-09 18:43:54 UTC) #2
siva
8 years, 4 months ago (2012-08-10 00:37:05 UTC) #3
Thanks.

https://chromiumcodereview.appspot.com/10827249/diff/10001/vm/object.h
File vm/object.h (right):

https://chromiumcodereview.appspot.com/10827249/diff/10001/vm/object.h#newcod...
vm/object.h:238: static RawArray* empty_array() { return empty_array_; }
On 2012/08/09 18:43:54, srdjan wrote:
> Maybe replace all Array::Empty() with Object::empty_array()

Done.

Powered by Google App Engine
This is Rietveld 408576698