Do not make objects in optimized code weak if collecting maps is disabled.
authorulan@chromium.org <ulan@chromium.org@ce2b1a6d-e550-0410-aec6-3dcde31c8c00>
Tue, 29 Apr 2014 12:32:38 +0000 (12:32 +0000)
committerulan@chromium.org <ulan@chromium.org@ce2b1a6d-e550-0410-aec6-3dcde31c8c00>
Tue, 29 Apr 2014 12:32:38 +0000 (12:32 +0000)
When collecting maps is disabled we do not clear non-live references.

BUG=
R=ishell@chromium.org

Review URL: https://codereview.chromium.org/258163003

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@21044 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

src/objects-inl.h

index 5aea3b5..ddeaede 100644 (file)
@@ -4808,9 +4808,9 @@ Object* Code::GetObjectFromEntryAddress(Address location_of_address) {
 
 
 bool Code::IsWeakObjectInOptimizedCode(Object* object) {
+  if (!FLAG_collect_maps) return false;
   if (object->IsMap()) {
     return Map::cast(object)->CanTransition() &&
-           FLAG_collect_maps &&
            FLAG_weak_embedded_maps_in_optimized_code;
   }
   if (object->IsJSObject() ||