Commit 3c58a5a8 authored by verwaest@chromium.org's avatar verwaest@chromium.org

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
parent ec195cd9
......@@ -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());
}
......
......@@ -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();
}
......
......@@ -5959,14 +5959,13 @@ class Map: public HeapObject {
kDescriptorIndexBitCount, kDescriptorIndexBitCount> {}; // NOLINT
STATIC_ASSERT(kDescriptorIndexBitCount + kDescriptorIndexBitCount == 20);
class IsShared: public BitField<bool, 20, 1> {};
class FunctionWithPrototype: public BitField<bool, 21, 1> {};
class DictionaryMap: public BitField<bool, 22, 1> {};
class OwnsDescriptors: public BitField<bool, 23, 1> {};
class HasInstanceCallHandler: public BitField<bool, 24, 1> {};
class Deprecated: public BitField<bool, 25, 1> {};
class IsFrozen: public BitField<bool, 26, 1> {};
class IsUnstable: public BitField<bool, 27, 1> {};
class IsMigrationTarget: public BitField<bool, 28, 1> {};
class DictionaryMap: public BitField<bool, 21, 1> {};
class OwnsDescriptors: public BitField<bool, 22, 1> {};
class HasInstanceCallHandler: public BitField<bool, 23, 1> {};
class Deprecated: public BitField<bool, 24, 1> {};
class IsFrozen: public BitField<bool, 25, 1> {};
class IsUnstable: public BitField<bool, 26, 1> {};
class IsMigrationTarget: public BitField<bool, 27, 1> {};
// 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<bool, 7, 1> {};
// Bit positions for bit field 2
static const int kIsExtensible = 0;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment