From: verwaest@chromium.org Date: Fri, 9 May 2014 13:20:40 +0000 (+0000) Subject: Make space available in bf3 by moving FunctionWithPrototype to bf1 X-Git-Tag: upstream/4.7.83~9200 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=3c58a5a8dffe40349a005d106bd99d92e17ca7f4;p=platform%2Fupstream%2Fv8.git Make space available in bf3 by moving FunctionWithPrototype to bf1 BUG= R=ishell@chromium.org Review URL: https://codereview.chromium.org/275053002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21226 ce2b1a6d-e550-0410-aec6-3dcde31c8c00 --- diff --git a/src/objects-inl.h b/src/objects-inl.h index 6550e21..00cd62e 100644 --- a/src/objects-inl.h +++ b/src/objects-inl.h @@ -4033,12 +4033,12 @@ bool Map::has_non_instance_prototype() { void Map::set_function_with_prototype(bool value) { - set_bit_field3(FunctionWithPrototype::update(bit_field3(), value)); + set_bit_field(FunctionWithPrototype::update(bit_field(), value)); } bool Map::function_with_prototype() { - return FunctionWithPrototype::decode(bit_field3()); + return FunctionWithPrototype::decode(bit_field()); } diff --git a/src/objects.cc b/src/objects.cc index 956e46f..1b95d89 100644 --- a/src/objects.cc +++ b/src/objects.cc @@ -9918,8 +9918,8 @@ static bool CheckEquivalent(Map* first, Map* second) { first->instance_type() == second->instance_type() && first->bit_field() == second->bit_field() && first->bit_field2() == second->bit_field2() && - first->is_observed() == second->is_observed() && - first->function_with_prototype() == second->function_with_prototype(); + first->is_frozen() == second->is_frozen() && + first->has_instance_call_handler() == second->has_instance_call_handler(); } diff --git a/src/objects.h b/src/objects.h index 3777fb8..9e20652 100644 --- a/src/objects.h +++ b/src/objects.h @@ -5959,14 +5959,13 @@ class Map: public HeapObject { kDescriptorIndexBitCount, kDescriptorIndexBitCount> {}; // NOLINT STATIC_ASSERT(kDescriptorIndexBitCount + kDescriptorIndexBitCount == 20); class IsShared: public BitField {}; - class FunctionWithPrototype: public BitField {}; - class DictionaryMap: public BitField {}; - class OwnsDescriptors: public BitField {}; - class HasInstanceCallHandler: public BitField {}; - class Deprecated: public BitField {}; - class IsFrozen: public BitField {}; - class IsUnstable: public BitField {}; - class IsMigrationTarget: public BitField {}; + class DictionaryMap: public BitField {}; + class OwnsDescriptors: public BitField {}; + class HasInstanceCallHandler: public BitField {}; + class Deprecated: public BitField {}; + class IsFrozen: public BitField {}; + class IsUnstable: public BitField {}; + class IsMigrationTarget: public BitField {}; // Tells whether the object in the prototype property will be used // for instances created from this function. If the prototype @@ -6521,14 +6520,14 @@ class Map: public HeapObject { STATIC_CHECK(kInstanceTypeOffset == Internals::kMapInstanceTypeOffset); // Bit positions for bit field. - static const int kUnused = 0; // To be used for marking recently used maps. - static const int kHasNonInstancePrototype = 1; - static const int kIsHiddenPrototype = 2; - static const int kHasNamedInterceptor = 3; - static const int kHasIndexedInterceptor = 4; - static const int kIsUndetectable = 5; - static const int kIsObserved = 6; - static const int kIsAccessCheckNeeded = 7; + static const int kHasNonInstancePrototype = 0; + static const int kIsHiddenPrototype = 1; + static const int kHasNamedInterceptor = 2; + static const int kHasIndexedInterceptor = 3; + static const int kIsUndetectable = 4; + static const int kIsObserved = 5; + static const int kIsAccessCheckNeeded = 6; + class FunctionWithPrototype: public BitField {}; // Bit positions for bit field 2 static const int kIsExtensible = 0;