Fix object visitor.
authorrossberg@chromium.org <rossberg@chromium.org@ce2b1a6d-e550-0410-aec6-3dcde31c8c00>
Mon, 23 May 2011 09:11:24 +0000 (09:11 +0000)
committerrossberg@chromium.org <rossberg@chromium.org@ce2b1a6d-e550-0410-aec6-3dcde31c8c00>
Mon, 23 May 2011 09:11:24 +0000 (09:11 +0000)
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7984 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

src/heap.cc
src/objects-visiting.cc

index 5dca592e6b7e45a5b3fe76fc7525c89f9392cc90..ef63a264c22000d3d1323fb0afb831c14773c332 100644 (file)
@@ -3228,10 +3228,9 @@ MaybeObject* Heap::AllocateJSProxy(Object* handler, Object* prototype) {
   // Allocate map.
   // TODO(rossberg): Once we optimize proxies, think about a scheme to share
   // maps. Will probably depend on the identity of the handler object, too.
-  Object* map_obj;
+  Map* map;
   MaybeObject* maybe_map_obj = AllocateMap(JS_PROXY_TYPE, JSProxy::kSize);
-  if (!maybe_map_obj->ToObject(&map_obj)) return maybe_map_obj;
-  Map* map = Map::cast(map_obj);
+  if (!maybe_map_obj->To<Map>(&map)) return maybe_map_obj;
   map->set_prototype(prototype);
   map->set_pre_allocated_property_fields(1);
   map->set_inobject_properties(1);
index 8a6620dac2c77ba218406bf0c05afd0929e7843d..a03c8c86bc5cafb6cf6597e2549d81c7b239bd36 100644 (file)
@@ -89,8 +89,8 @@ StaticVisitorBase::VisitorId StaticVisitorBase::GetVisitorId(
       return kVisitSharedFunctionInfo;
 
     case JS_PROXY_TYPE:
-      return GetVisitorIdForSize(kVisitDataObject,
-                                 kVisitDataObjectGeneric,
+      return GetVisitorIdForSize(kVisitStruct,
+                                 kVisitStructGeneric,
                                  JSProxy::kSize);
 
     case FOREIGN_TYPE: