OLD | NEW |
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "src/v8.h" | 5 #include "src/v8.h" |
6 | 6 |
7 #include "src/base/atomicops.h" | 7 #include "src/base/atomicops.h" |
8 #include "src/base/bits.h" | 8 #include "src/base/bits.h" |
9 #include "src/code-stubs.h" | 9 #include "src/code-stubs.h" |
10 #include "src/compilation-cache.h" | 10 #include "src/compilation-cache.h" |
(...skipping 3413 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3424 case SlotsBuffer::CODE_ENTRY_SLOT: { | 3424 case SlotsBuffer::CODE_ENTRY_SLOT: { |
3425 v->VisitCodeEntry(addr); | 3425 v->VisitCodeEntry(addr); |
3426 break; | 3426 break; |
3427 } | 3427 } |
3428 case SlotsBuffer::RELOCATED_CODE_OBJECT: { | 3428 case SlotsBuffer::RELOCATED_CODE_OBJECT: { |
3429 HeapObject* obj = HeapObject::FromAddress(addr); | 3429 HeapObject* obj = HeapObject::FromAddress(addr); |
3430 Code::cast(obj)->CodeIterateBody(v); | 3430 Code::cast(obj)->CodeIterateBody(v); |
3431 break; | 3431 break; |
3432 } | 3432 } |
3433 case SlotsBuffer::DEBUG_TARGET_SLOT: { | 3433 case SlotsBuffer::DEBUG_TARGET_SLOT: { |
3434 RelocInfo rinfo(addr, RelocInfo::DEBUG_BREAK_SLOT, 0, NULL); | 3434 RelocInfo rinfo(addr, RelocInfo::DEBUG_BREAK_SLOT_AT_POSITION, 0, NULL); |
3435 if (rinfo.IsPatchedDebugBreakSlotSequence()) rinfo.Visit(isolate, v); | 3435 if (rinfo.IsPatchedDebugBreakSlotSequence()) rinfo.Visit(isolate, v); |
3436 break; | 3436 break; |
3437 } | 3437 } |
3438 case SlotsBuffer::JS_RETURN_SLOT: { | 3438 case SlotsBuffer::JS_RETURN_SLOT: { |
3439 RelocInfo rinfo(addr, RelocInfo::JS_RETURN, 0, NULL); | 3439 RelocInfo rinfo(addr, RelocInfo::JS_RETURN, 0, NULL); |
3440 if (rinfo.IsPatchedReturnSequence()) rinfo.Visit(isolate, v); | 3440 if (rinfo.IsPatchedReturnSequence()) rinfo.Visit(isolate, v); |
3441 break; | 3441 break; |
3442 } | 3442 } |
3443 case SlotsBuffer::EMBEDDED_OBJECT_SLOT: { | 3443 case SlotsBuffer::EMBEDDED_OBJECT_SLOT: { |
3444 RelocInfo rinfo(addr, RelocInfo::EMBEDDED_OBJECT, 0, NULL); | 3444 RelocInfo rinfo(addr, RelocInfo::EMBEDDED_OBJECT, 0, NULL); |
(...skipping 1208 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4653 SlotsBuffer* buffer = *buffer_address; | 4653 SlotsBuffer* buffer = *buffer_address; |
4654 while (buffer != NULL) { | 4654 while (buffer != NULL) { |
4655 SlotsBuffer* next_buffer = buffer->next(); | 4655 SlotsBuffer* next_buffer = buffer->next(); |
4656 DeallocateBuffer(buffer); | 4656 DeallocateBuffer(buffer); |
4657 buffer = next_buffer; | 4657 buffer = next_buffer; |
4658 } | 4658 } |
4659 *buffer_address = NULL; | 4659 *buffer_address = NULL; |
4660 } | 4660 } |
4661 } // namespace internal | 4661 } // namespace internal |
4662 } // namespace v8 | 4662 } // namespace v8 |
OLD | NEW |