V8 Project
|
#include <assembler.h>
Public Member Functions | |
RelocIterator (Code *code, int mode_mask=-1) | |
RelocIterator (const CodeDesc &desc, int mode_mask=-1) | |
bool | done () const |
void | next () |
RelocInfo * | rinfo () |
![]() | |
void * | operator new (size_t size) |
void | operator delete (void *p) |
Private Member Functions | |
void | Advance (int bytes=1) |
int | AdvanceGetTag () |
int | GetExtraTag () |
int | GetTopTag () |
void | ReadTaggedPC () |
void | AdvanceReadPC () |
void | AdvanceReadId () |
void | AdvanceReadPoolData () |
void | AdvanceReadPosition () |
void | AdvanceReadData () |
void | AdvanceReadVariableLengthPCJump () |
int | GetLocatableTypeTag () |
void | ReadTaggedId () |
void | ReadTaggedPosition () |
bool | SetMode (RelocInfo::Mode mode) |
DISALLOW_COPY_AND_ASSIGN (RelocIterator) | |
Private Attributes | |
byte * | pos_ |
byte * | end_ |
byte * | code_age_sequence_ |
RelocInfo | rinfo_ |
bool | done_ |
int | mode_mask_ |
int | last_id_ |
int | last_position_ |
Additional Inherited Members | |
![]() | |
static void | FatalProcessOutOfMemory () |
static void * | New (size_t size) |
static void | Delete (void *p) |
Definition at line 672 of file assembler.h.
Definition at line 688 of file assembler.cc.
References code_age_sequence_, v8::internal::RelocInfo::data_, done_, end_, v8::internal::Code::FindCodeAgeSequence(), v8::internal::HeapObject::GetIsolate(), v8::internal::RelocInfo::host_, v8::internal::Code::instruction_start(), v8::internal::Code::IsYoungSequence(), last_id_, last_position_, v8::internal::HeapObject::map(), mode_mask_, next(), NULL, v8::internal::RelocInfo::pc_, pos_, v8::internal::Code::relocation_size(), v8::internal::Code::relocation_start(), and rinfo_.
Definition at line 713 of file assembler.cc.
References v8::internal::CodeDesc::buffer, v8::internal::CodeDesc::buffer_size, code_age_sequence_, v8::internal::RelocInfo::data_, done_, end_, last_id_, last_position_, mode_mask_, next(), NULL, v8::internal::RelocInfo::pc_, pos_, v8::internal::CodeDesc::reloc_size, and rinfo_.
|
inlineprivate |
Definition at line 695 of file assembler.h.
References pos_.
Referenced by next().
|
inlineprivate |
Definition at line 481 of file assembler.cc.
References v8::internal::kTagMask, and pos_.
Referenced by next().
|
private |
Definition at line 535 of file assembler.cc.
References v8::internal::RelocInfo::data_, v8::internal::kBitsPerByte, v8::internal::kIntptrSize, pos_, and rinfo_.
Referenced by next().
|
private |
Definition at line 506 of file assembler.cc.
References v8::internal::RelocInfo::data_, v8::internal::kBitsPerByte, v8::internal::kIntSize, last_id_, pos_, and rinfo_.
Referenced by next().
|
inlineprivate |
Definition at line 501 of file assembler.cc.
References v8::internal::RelocInfo::pc_, pos_, and rinfo_.
Referenced by next().
|
private |
Definition at line 516 of file assembler.cc.
References v8::internal::RelocInfo::data_, v8::internal::kBitsPerByte, v8::internal::kIntSize, pos_, and rinfo_.
Referenced by next().
|
private |
Definition at line 525 of file assembler.cc.
References v8::internal::RelocInfo::data_, v8::internal::kBitsPerByte, v8::internal::kIntSize, last_position_, pos_, and rinfo_.
Referenced by next().
|
private |
Definition at line 544 of file assembler.cc.
References v8::internal::kChunkBits, v8::internal::kIntSize, v8::internal::kLastChunkTagBits, v8::internal::kLastChunkTagMask, v8::internal::kSmallPCDeltaBits, v8::internal::RelocInfo::pc_, pos_, and rinfo_.
Referenced by next().
|
private |
|
inline |
Definition at line 682 of file assembler.h.
References done_.
Referenced by v8::internal::Code::ClearInlineCaches(), v8::internal::Code::CodeIterateBody(), v8::internal::ComputeCodeOffsetFromPcOffset(), v8::internal::ComputePcOffsetFromCodeOffset(), v8::internal::Code::CopyFrom(), v8::internal::Code::FindAllMaps(), v8::internal::Code::FindAndReplace(), v8::internal::Code::FindFirstHandler(), v8::internal::Code::FindFirstName(), v8::internal::Code::FindHandlerForMap(), v8::internal::Code::FindHandlers(), v8::internal::Code::FindNthObject(), v8::internal::TypeFeedbackOracle::GetRelocInfos(), v8::internal::Code::InvalidateEmbeddedObjects(), v8::internal::IC::InvalidateMaps(), v8::internal::Debug::IsBreakAtReturn(), next(), v8::internal::PatchPositionsInCode(), v8::internal::Code::PrintDeoptLocation(), v8::internal::Code::Relocate(), v8::internal::LiveEdit::ReplaceRefToNestedFunction(), rinfo(), v8::internal::BreakLocationIterator::RinfoDone(), v8::internal::BreakLocationIterator::RinfoNext(), v8::internal::RUNTIME_FUNCTION(), v8::internal::compiler::SearchSharedFunctionInfo(), v8::internal::Debug::SetAfterBreakTarget(), v8::internal::Code::SourcePosition(), v8::internal::Code::SourceStatementPosition(), and v8::internal::WipeOutRelocations().
|
inlineprivate |
Definition at line 486 of file assembler.cc.
References v8::internal::kExtraTagBits, v8::internal::kTagBits, and pos_.
Referenced by next().
|
inlineprivate |
Definition at line 560 of file assembler.cc.
References v8::internal::kLocatableTypeTagBits, and pos_.
Referenced by next().
|
inlineprivate |
Definition at line 491 of file assembler.cc.
References v8::internal::kExtraTagBits, v8::internal::kTagBits, and pos_.
Referenced by next().
void v8::internal::RelocIterator::next | ( | ) |
Definition at line 590 of file assembler.cc.
References Advance(), AdvanceGetTag(), AdvanceReadData(), AdvanceReadId(), AdvanceReadPC(), AdvanceReadPoolData(), AdvanceReadPosition(), AdvanceReadVariableLengthPCJump(), v8::internal::RelocInfo::CODE_AGE_SEQUENCE, code_age_sequence_, v8::internal::RelocInfo::CODE_TARGET, v8::internal::RelocInfo::CODE_TARGET_WITH_ID, v8::internal::RelocInfo::COMMENT, v8::internal::RelocInfo::CONST_POOL, v8::internal::RelocInfo::data_, DCHECK, done(), done_, v8::internal::RelocInfo::EMBEDDED_OBJECT, end_, GetExtraTag(), GetLocatableTypeTag(), v8::internal::GetPositionModeFromTag(), GetTopTag(), v8::internal::kCodeTargetTag, v8::internal::kCodeWithIdTag, v8::internal::kCommentTag, v8::internal::kConstPoolTag, v8::internal::kDataJumpExtraTag, v8::internal::kDefaultTag, v8::internal::kEmbeddedObjectTag, v8::internal::kIntptrSize, v8::internal::kIntSize, v8::internal::kLocatableTag, v8::internal::kNonstatementPositionTag, v8::internal::kPCJumpExtraTag, v8::internal::kPoolExtraTag, v8::internal::RelocInfo::kPositionMask, v8::internal::kStatementPositionTag, v8::internal::kVariableLengthPCJumpTopTag, v8::internal::kVeneerPoolTag, v8::internal::RelocInfo::LAST_COMPACT_ENUM, mode_mask_, NULL, v8::internal::RelocInfo::pc_, pos_, ReadTaggedId(), ReadTaggedPC(), ReadTaggedPosition(), rinfo_, SetMode(), and v8::internal::RelocInfo::VENEER_POOL.
Referenced by v8::internal::Code::CodeIterateBody(), v8::internal::Debug::IsBreakAtReturn(), RelocIterator(), v8::internal::BreakLocationIterator::RinfoNext(), v8::internal::RUNTIME_FUNCTION(), v8::internal::Debug::SetAfterBreakTarget(), v8::internal::Code::SourcePosition(), and v8::internal::Code::SourceStatementPosition().
|
inlineprivate |
Definition at line 565 of file assembler.cc.
References v8::internal::RelocInfo::data_, v8::internal::kLocatableTypeTagBits, last_id_, pos_, and rinfo_.
Referenced by next().
|
inlineprivate |
Definition at line 496 of file assembler.cc.
References v8::internal::kTagBits, v8::internal::RelocInfo::pc_, pos_, and rinfo_.
Referenced by next().
|
inlineprivate |
Definition at line 573 of file assembler.cc.
References v8::internal::RelocInfo::data_, v8::internal::kLocatableTypeTagBits, last_position_, pos_, and rinfo_.
Referenced by next().
|
inline |
Definition at line 686 of file assembler.h.
References DCHECK, done(), and rinfo_.
Referenced by v8::internal::Code::CodeIterateBody(), v8::internal::Debug::IsBreakAtReturn(), v8::internal::BreakLocationIterator::original_rinfo(), v8::internal::BreakLocationIterator::original_rmode(), v8::internal::BreakLocationIterator::pc(), v8::internal::BreakLocationIterator::rinfo(), v8::internal::BreakLocationIterator::rmode(), v8::internal::RUNTIME_FUNCTION(), v8::internal::Debug::SetAfterBreakTarget(), v8::internal::Code::SourcePosition(), and v8::internal::Code::SourceStatementPosition().
|
inlineprivate |
Definition at line 712 of file assembler.h.
References mode(), mode_mask_, rinfo_, and v8::internal::RelocInfo::rmode_.
Referenced by next().
|
private |
Definition at line 718 of file assembler.h.
Referenced by next(), and RelocIterator().
|
private |
Definition at line 720 of file assembler.h.
Referenced by done(), next(), and RelocIterator().
|
private |
Definition at line 717 of file assembler.h.
Referenced by next(), and RelocIterator().
|
private |
Definition at line 722 of file assembler.h.
Referenced by AdvanceReadId(), ReadTaggedId(), and RelocIterator().
|
private |
Definition at line 723 of file assembler.h.
Referenced by AdvanceReadPosition(), ReadTaggedPosition(), and RelocIterator().
|
private |
Definition at line 721 of file assembler.h.
Referenced by next(), RelocIterator(), and SetMode().
|
private |
Definition at line 716 of file assembler.h.
Referenced by Advance(), AdvanceGetTag(), AdvanceReadData(), AdvanceReadId(), AdvanceReadPC(), AdvanceReadPoolData(), AdvanceReadPosition(), AdvanceReadVariableLengthPCJump(), GetExtraTag(), GetLocatableTypeTag(), GetTopTag(), next(), ReadTaggedId(), ReadTaggedPC(), ReadTaggedPosition(), and RelocIterator().
|
private |
Definition at line 719 of file assembler.h.
Referenced by AdvanceReadData(), AdvanceReadId(), AdvanceReadPC(), AdvanceReadPoolData(), AdvanceReadPosition(), AdvanceReadVariableLengthPCJump(), next(), ReadTaggedId(), ReadTaggedPC(), ReadTaggedPosition(), RelocIterator(), rinfo(), and SetMode().