| Index: src/heap.cc
|
| ===================================================================
|
| --- src/heap.cc (revision 572)
|
| +++ src/heap.cc (working copy)
|
| @@ -1378,12 +1378,11 @@
|
|
|
| Object* result = Allocate(map, NEW_SPACE);
|
| if (result->IsFailure()) return result;
|
| -
|
| + ASSERT(InNewSpace(result));
|
| ConsString* cons_string = ConsString::cast(result);
|
| - cons_string->set_first(first);
|
| - cons_string->set_second(second);
|
| + cons_string->set_first(first, SKIP_WRITE_BARRIER);
|
| + cons_string->set_second(second, SKIP_WRITE_BARRIER);
|
| cons_string->set_length(length);
|
| -
|
| return result;
|
| }
|
|
|
| @@ -1615,7 +1614,7 @@
|
| function->set_shared(shared);
|
| function->set_prototype_or_initial_map(prototype);
|
| function->set_context(undefined_value());
|
| - function->set_literals(empty_fixed_array());
|
| + function->set_literals(empty_fixed_array(), SKIP_WRITE_BARRIER);
|
| return function;
|
| }
|
|
|
| @@ -1676,14 +1675,6 @@
|
| Smi::FromInt(length),
|
| SKIP_WRITE_BARRIER);
|
|
|
| - // Allocate the elements if needed.
|
| - if (length > 0) {
|
| - // Allocate the fixed array.
|
| - Object* obj = Heap::AllocateFixedArray(length);
|
| - if (obj->IsFailure()) return obj;
|
| - JSObject::cast(result)->set_elements(FixedArray::cast(obj));
|
| - }
|
| -
|
| // Check the state of the object
|
| ASSERT(JSObject::cast(result)->HasFastProperties());
|
| ASSERT(JSObject::cast(result)->HasFastElements());
|
|
|