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

Issue 11968020: Fix for 7941 (Closed)

Created:
7 years, 11 months ago by siva
Modified:
7 years, 11 months ago
Reviewers:
Ivan Posva
CC:
reviews_dartlang.org
Visibility:
Public.

Description

Fix for 7941 - mark unused space in an object whose type has been transformed as Int8Array instead of Array. This ensure that GC does not traverse the contents of the unused space. Committed: https://code.google.com/p/dart/source/detail?r=17165

Patch Set 1 #

Patch Set 2 : #

Total comments: 2

Patch Set 3 : #

Unified diffs Side-by-side diffs Delta from patch set Stats (+28 lines, -36 lines) Patch
M runtime/vm/object.cc View 1 2 2 chunks +13 lines, -26 lines 0 comments Download
M runtime/vm/object_test.cc View 1 2 4 chunks +13 lines, -10 lines 0 comments Download
M runtime/vm/raw_object.h View 1 chunk +2 lines, -0 lines 0 comments Download

Messages

Total messages: 4 (0 generated)
siva
7 years, 11 months ago (2013-01-16 19:56:17 UTC) #1
siva
7 years, 11 months ago (2013-01-16 20:48:38 UTC) #2
Ivan Posva
LGTM with comment. -Ivan https://codereview.chromium.org/11968020/diff/5001/runtime/vm/object.cc File runtime/vm/object.cc (right): https://codereview.chromium.org/11968020/diff/5001/runtime/vm/object.cc#newcode530 runtime/vm/object.cc:530: uword addr = RawObject::ToAddr(obj.raw()) + ...
7 years, 11 months ago (2013-01-16 21:30:06 UTC) #3
siva
7 years, 11 months ago (2013-01-16 21:43:08 UTC) #4
https://codereview.chromium.org/11968020/diff/5001/runtime/vm/object.cc
File runtime/vm/object.cc (right):

https://codereview.chromium.org/11968020/diff/5001/runtime/vm/object.cc#newco...
runtime/vm/object.cc:530: uword addr = RawObject::ToAddr(obj.raw()) + used_size;
Changed code a bit as discussed offline.
ASSERT(object::InstanceSize() == Int8Array::InstanceSize(0));

On 2013/01/16 21:30:06, Ivan Posva wrote:
> How about adding
> ASSERT(Object::InstanceSize() + kObjectAlignment ==
Int8Array::InstanceSize(0));

Powered by Google App Engine
This is Rietveld 408576698