Home | History | Annotate | Download | only in heap

Lines Matching refs:object

107   // Helper function used by CopyObject to copy a source object to an
108 // allocated target object and update the forwarding pointer in the source
109 // object. Returns the target object.
113 // right after the target object. Incorporate double alignment
146 HeapObject* object, int object_size) {
149 DCHECK(heap->AllowedToBeMigrated(object, NEW_SPACE));
156 // filler for double alignment or migrating the object. Otherwise we
158 // object.
161 MigrateObject(heap, object, target, object_size);
175 HeapObject* object, int object_size) {
183 MigrateObject(heap, object, target, object_size);
200 HeapObject* object, int object_size) {
202 SLOW_DCHECK(object->Size() == object_size);
205 if (!heap->ShouldBePromoted(object->address(), object_size)) {
207 // try to promote the object.
208 if (SemiSpaceCopyObject<alignment>(map, slot, object, object_size)) {
213 if (PromoteObject<object_contents, alignment>(map, slot, object,
218 // If promotion failed, we try to copy the object to the other semi-space
219 if (SemiSpaceCopyObject<alignment>(map, slot, object, object_size)) return;
226 HeapObject* object) {
227 ObjectEvacuationStrategy<POINTER_OBJECT>::Visit(map, slot, object);
231 MapWord map_word = object->map_word();
237 // This object is black and it might not be rescanned by marker.
251 HeapObject* object) {
252 int length = reinterpret_cast<FixedArray*>(object)->synchronized_length();
254 EvacuateObject<POINTER_OBJECT, kWordAligned>(map, slot, object,
260 HeapObject* object) {
261 int length = reinterpret_cast<FixedDoubleArray*>(object)->length();
263 EvacuateObject<DATA_OBJECT, kDoubleAligned>(map, slot, object, object_size);
268 HeapObject* object) {
269 int object_size = reinterpret_cast<FixedTypedArrayBase*>(object)->size();
270 EvacuateObject<POINTER_OBJECT, kWordAligned>(map, slot, object,
276 HeapObject* object) {
277 int object_size = reinterpret_cast<FixedFloat64Array*>(object)->size();
278 EvacuateObject<POINTER_OBJECT, kDoubleAligned>(map, slot, object,
284 HeapObject* object) {
285 ObjectEvacuationStrategy<POINTER_OBJECT>::Visit(map, slot, object);
288 MapWord map_word = object->map_word();
298 HeapObject* object) {
299 int object_size = reinterpret_cast<ByteArray*>(object)->ByteArraySize();
300 EvacuateObject<DATA_OBJECT, kWordAligned>(map, slot, object, object_size);
305 HeapObject* object) {
306 int object_size = SeqOneByteString::cast(object)
308 EvacuateObject<DATA_OBJECT, kWordAligned>(map, slot, object, object_size);
313 HeapObject* object) {
314 int object_size = SeqTwoByteString::cast(object)
316 EvacuateObject<DATA_OBJECT, kWordAligned>(map, slot, object, object_size);
321 HeapObject* object) {
327 ConsString::cast(object)->unchecked_second() == heap->empty_string()) {
329 HeapObject::cast(ConsString::cast(object)->unchecked_first());
334 object->set_map_word(MapWord::FromForwardingAddress(first));
343 object->set_map_word(MapWord::FromForwardingAddress(target));
348 object->set_map_word(MapWord::FromForwardingAddress(*slot));
353 EvacuateObject<POINTER_OBJECT, kWordAligned>(map, slot, object,
362 HeapObject* object) {
363 EvacuateObject<object_contents, kWordAligned>(map, slot, object,
367 static inline void Visit(Map* map, HeapObject** slot, HeapObject* object) {
369 EvacuateObject<object_contents, kWordAligned>(map, slot, object,
396 void Scavenger::ScavengeObjectSlow(HeapObject** p, HeapObject* object) {
397 SLOW_DCHECK(object->GetIsolate()->heap()->InFromSpace(object));
398 MapWord first_word = object->map_word();
402 scavenger->scavenging_visitors_table_.GetVisitor(map)(map, p, object);
436 // Scavenging code relies on the fact that new space object
451 void ScavengeVisitor::VisitPointer(Object** p) { ScavengePointer(p); }
454 void ScavengeVisitor::VisitPointers(Object** start, Object** end) {
456 for (Object** p = start; p < end; p++) ScavengePointer(p);
460 void ScavengeVisitor::ScavengePointer(Object** p) {
461 Object* object = *p;
462 if (!heap_->InNewSpace(object)) return;
464 reinterpret_cast<HeapObject*>(object));