![]() |
v8
V8 is Google’s open source high-performance JavaScript and WebAssembly engine, written in C++.
|
#include <register-allocator-verifier.h>
Classes | |
class | DelayedAssessments |
struct | InstructionConstraint |
struct | OperandConstraint |
Public Member Functions | |
RegisterAllocatorVerifier (Zone *zone, const RegisterConfiguration *config, const InstructionSequence *sequence, const Frame *frame) | |
RegisterAllocatorVerifier (const RegisterAllocatorVerifier &)=delete | |
RegisterAllocatorVerifier & | operator= (const RegisterAllocatorVerifier &)=delete |
void | VerifyAssignment (const char *caller_info) |
void | VerifyGapMoves () |
![]() | |
void * | operator new (size_t, Zone *)=delete |
void * | operator new (size_t size, void *ptr) |
void | operator delete (void *, size_t) |
void | operator delete (void *pointer, Zone *zone)=delete |
Private Types | |
enum | ConstraintType { kConstant , kImmediate , kRegister , kFixedRegister , kFPRegister , kFixedFPRegister , kSlot , kFixedSlot , kRegisterOrSlot , kRegisterOrSlotFP , kRegisterOrSlotOrConstant , kSameAsInput , kRegisterAndSlot } |
using | Constraints = ZoneVector<InstructionConstraint> |
Private Member Functions | |
Zone * | zone () const |
const RegisterConfiguration * | config () |
const InstructionSequence * | sequence () const |
Constraints * | constraints () |
int | spill_slot_delta () const |
void | BuildConstraint (const InstructionOperand *op, OperandConstraint *constraint) |
void | CheckConstraint (const InstructionOperand *op, const OperandConstraint *constraint) |
BlockAssessments * | CreateForBlock (const InstructionBlock *block) |
void | ValidatePendingAssessment (RpoNumber block_id, InstructionOperand op, const BlockAssessments *current_assessments, PendingAssessment *const assessment, int virtual_register) |
void | ValidateUse (RpoNumber block_id, BlockAssessments *current_assessments, InstructionOperand op, int virtual_register) |
Static Private Member Functions | |
static void | VerifyInput (const OperandConstraint &constraint) |
static void | VerifyTemp (const OperandConstraint &constraint) |
static void | VerifyOutput (const OperandConstraint &constraint) |
Private Attributes | |
Zone *const | zone_ |
const RegisterConfiguration * | config_ |
const InstructionSequence *const | sequence_ |
Constraints | constraints_ |
ZoneMap< RpoNumber, BlockAssessments * > | assessments_ |
ZoneMap< RpoNumber, DelayedAssessments * > | outstanding_assessments_ |
int | spill_slot_delta_ |
const char * | caller_info_ = nullptr |
Definition at line 205 of file register-allocator-verifier.h.
|
private |
Definition at line 249 of file register-allocator-verifier.h.
Enumerator | |
---|---|
kConstant | |
kImmediate | |
kRegister | |
kFixedRegister | |
kFPRegister | |
kFixedFPRegister | |
kSlot | |
kFixedSlot | |
kRegisterOrSlot | |
kRegisterOrSlotFP | |
kRegisterOrSlotOrConstant | |
kSameAsInput | |
kRegisterAndSlot |
Definition at line 218 of file register-allocator-verifier.h.
v8::internal::compiler::RegisterAllocatorVerifier::RegisterAllocatorVerifier | ( | Zone * | zone, |
const RegisterConfiguration * | config, | ||
const InstructionSequence * | sequence, | ||
const Frame * | frame ) |
Definition at line 63 of file register-allocator-verifier.cc.
|
delete |
|
private |
Definition at line 159 of file register-allocator-verifier.cc.
|
private |
Definition at line 227 of file register-allocator-verifier.cc.
|
inlineprivate |
Definition at line 273 of file register-allocator-verifier.h.
|
inlineprivate |
Definition at line 275 of file register-allocator-verifier.h.
|
private |
Definition at line 388 of file register-allocator-verifier.cc.
|
delete |
|
inlineprivate |
Definition at line 274 of file register-allocator-verifier.h.
|
inlineprivate |
Definition at line 276 of file register-allocator-verifier.h.
|
private |
Definition at line 438 of file register-allocator-verifier.cc.
|
private |
Definition at line 525 of file register-allocator-verifier.cc.
void v8::internal::compiler::RegisterAllocatorVerifier::VerifyAssignment | ( | const char * | caller_info | ) |
Definition at line 132 of file register-allocator-verifier.cc.
void v8::internal::compiler::RegisterAllocatorVerifier::VerifyGapMoves | ( | ) |
Definition at line 550 of file register-allocator-verifier.cc.
|
staticprivate |
Definition at line 109 of file register-allocator-verifier.cc.
|
staticprivate |
Definition at line 125 of file register-allocator-verifier.cc.
|
staticprivate |
Definition at line 118 of file register-allocator-verifier.cc.
|
inlineprivate |
Definition at line 272 of file register-allocator-verifier.h.
|
private |
Definition at line 301 of file register-allocator-verifier.h.
|
private |
Definition at line 305 of file register-allocator-verifier.h.
|
private |
Definition at line 298 of file register-allocator-verifier.h.
|
private |
Definition at line 300 of file register-allocator-verifier.h.
|
private |
Definition at line 302 of file register-allocator-verifier.h.
|
private |
Definition at line 299 of file register-allocator-verifier.h.
|
private |
Definition at line 303 of file register-allocator-verifier.h.
|
private |
Definition at line 297 of file register-allocator-verifier.h.