Merged r11831 into trunk branch.

Revert part of 11727 as it sometimes tanked V8 benchmark (raytrace) performance for reasons that are not obvious.  Now we make objects into fast-case objects when they are made prototypes for other objects, but we do not mark objects that are already fast case with a bit that helps keep them in fast case. Review URL: https://chromiumcodereview.appspot.com/10556004

R=danno@chromium.org
BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com/10564002

git-svn-id: http://v8.googlecode.com/svn/trunk@11832 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
diff --git a/src/objects-inl.h b/src/objects-inl.h
index da1a35b..4f66af2 100644
--- a/src/objects-inl.h
+++ b/src/objects-inl.h
@@ -1616,8 +1616,7 @@
   int inobject = map()->inobject_properties();
 
   int limit;
-  if (store_mode == CERTAINLY_NOT_STORE_FROM_KEYED ||
-      map()->used_for_prototype()) {
+  if (store_mode == CERTAINLY_NOT_STORE_FROM_KEYED) {
     limit = Max(inobject, kMaxFastProperties);
   } else {
     limit = Max(inobject, kFastPropertiesSoftLimit);
@@ -2982,20 +2981,6 @@
 }
 
 
-void Map::set_used_for_prototype(bool value) {
-  if (value) {
-    set_bit_field3(bit_field3() | (1 << kUsedForPrototype));
-  } else {
-    set_bit_field3(bit_field3() & ~(1 << kUsedForPrototype));
-  }
-}
-
-
-bool Map::used_for_prototype() {
-  return ((1 << kUsedForPrototype) & bit_field3()) != 0;
-}
-
-
 JSFunction* Map::unchecked_constructor() {
   return reinterpret_cast<JSFunction*>(READ_FIELD(this, kConstructorOffset));
 }