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

Issue 10521004: Eliminate RawObject::class_ field entirely. (Closed)

Created:
8 years, 6 months ago by Vyacheslav Egorov (Google)
Modified:
8 years, 6 months ago
Reviewers:
Ivan Posva
CC:
reviews_dartlang.org
Visibility:
Public.

Description

Eliminate RawObject::class_ field entirely. Removed initializations of class_ field done in runtime and generated code on ia32/x64. Changed forwarding address encoding used by scavenger: kFreeBit is now used to distinguish evacuated objects from not evacuated because scavenger will never encounter real FreeListElement. Changed FreeListElement layout to match RawObject layout. R=iposva@google.com Committed: https://code.google.com/p/dart/source/detail?r=8336

Patch Set 1 #

Total comments: 4
Unified diffs Side-by-side diffs Delta from patch set Stats (+30 lines, -211 lines) Patch
M runtime/vm/assembler_macros_ia32.h View 1 chunk +2 lines, -4 lines 0 comments Download
M runtime/vm/assembler_macros_ia32.cc View 2 chunks +0 lines, -13 lines 0 comments Download
M runtime/vm/assembler_macros_x64.h View 1 chunk +2 lines, -4 lines 0 comments Download
M runtime/vm/assembler_macros_x64.cc View 2 chunks +0 lines, -11 lines 0 comments Download
M runtime/vm/freelist.h View 1 chunk +3 lines, -28 lines 1 comment Download
M runtime/vm/freelist.cc View 3 chunks +4 lines, -32 lines 0 comments Download
M runtime/vm/intrinsifier_ia32.cc View 8 chunks +0 lines, -26 lines 2 comments Download
M runtime/vm/object.h View 1 chunk +0 lines, -1 line 0 comments Download
M runtime/vm/object.cc View 6 chunks +0 lines, -10 lines 0 comments Download
M runtime/vm/object_test.cc View 2 chunks +4 lines, -4 lines 0 comments Download
M runtime/vm/opt_code_generator_ia32.cc View 1 chunk +0 lines, -1 line 0 comments Download
M runtime/vm/raw_object.h View 1 chunk +0 lines, -1 line 0 comments Download
M runtime/vm/raw_object.cc View 5 chunks +3 lines, -16 lines 0 comments Download
M runtime/vm/scavenger.cc View 2 chunks +12 lines, -3 lines 1 comment Download
M runtime/vm/snapshot.cc View 1 chunk +0 lines, -1 line 0 comments Download
M runtime/vm/stub_code_ia32.cc View 6 chunks +0 lines, -28 lines 0 comments Download
M runtime/vm/stub_code_x64.cc View 6 chunks +0 lines, -22 lines 0 comments Download
M runtime/vm/verifier.cc View 1 chunk +0 lines, -6 lines 0 comments Download

Messages

Total messages: 2 (0 generated)
Vyacheslav Egorov (Google)
8 years, 6 months ago (2012-06-04 12:10:46 UTC) #1
Ivan Posva
8 years, 6 months ago (2012-06-06 13:42:11 UTC) #2
LGTM with comments.

-Ivan

https://chromiumcodereview.appspot.com/10521004/diff/1/runtime/vm/freelist.h
File runtime/vm/freelist.h (right):

https://chromiumcodereview.appspot.com/10521004/diff/1/runtime/vm/freelist.h#...
runtime/vm/freelist.h:44: // This layout mirrors the layout of RawObject.
As discussed offline the expectation here is that this comment will be made true
in a follow up change.

https://chromiumcodereview.appspot.com/10521004/diff/1/runtime/vm/intrinsifie...
File runtime/vm/intrinsifier_ia32.cc (right):

https://chromiumcodereview.appspot.com/10521004/diff/1/runtime/vm/intrinsifie...
runtime/vm/intrinsifier_ia32.cc:645: const Class& mint_class =
Class::ZoneHandle(
Does still need to be a ZoneHandle?

https://chromiumcodereview.appspot.com/10521004/diff/1/runtime/vm/intrinsifie...
runtime/vm/intrinsifier_ia32.cc:903: const Class& double_class =
Class::ZoneHandle(
Ditto here and many other places.

https://chromiumcodereview.appspot.com/10521004/diff/1/runtime/vm/scavenger.cc
File runtime/vm/scavenger.cc (right):

https://chromiumcodereview.appspot.com/10521004/diff/1/runtime/vm/scavenger.c...
runtime/vm/scavenger.cc:164: // Verify assumptions about the first word in
objects that scavenger is going
objects which the scavenger

Powered by Google App Engine
This is Rietveld 408576698