v8
V8 is Google’s open source high-performance JavaScript and WebAssembly engine, written in C++.
Loading...
Searching...
No Matches
v8::internal::compiler::BlockAssessments Class Reference

#include <register-allocator-verifier.h>

Inheritance diagram for v8::internal::compiler::BlockAssessments:
Collaboration diagram for v8::internal::compiler::BlockAssessments:

Public Types

using OperandMap = ZoneMap<InstructionOperand, Assessment*, OperandAsKeyLess>
 
using OperandSet = ZoneSet<InstructionOperand, OperandAsKeyLess>
 

Public Member Functions

 BlockAssessments (Zone *zone, int spill_slot_delta, const InstructionSequence *sequence)
 
 BlockAssessments (const BlockAssessments &)=delete
 
BlockAssessmentsoperator= (const BlockAssessments &)=delete
 
void Drop (InstructionOperand operand)
 
void DropRegisters ()
 
void AddDefinition (InstructionOperand operand, int virtual_register)
 
void PerformMoves (const Instruction *instruction)
 
void PerformParallelMoves (const ParallelMove *moves)
 
void CopyFrom (const BlockAssessments *other)
 
void CheckReferenceMap (const ReferenceMap *reference_map)
 
bool IsStaleReferenceStackSlot (InstructionOperand op, std::optional< int > vreg=std::nullopt)
 
OperandMapmap ()
 
const OperandMapmap () const
 
OperandSetstale_ref_stack_slots ()
 
const OperandSetstale_ref_stack_slots () const
 
int spill_slot_delta () const
 
void Print () const
 
- Public Member Functions inherited from v8::internal::ZoneObject
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 Attributes

OperandMap map_
 
OperandMap map_for_moves_
 
OperandSet stale_ref_stack_slots_
 
int spill_slot_delta_
 
Zonezone_
 
const InstructionSequencesequence_
 

Detailed Description

Definition at line 136 of file register-allocator-verifier.h.

Member Typedef Documentation

◆ OperandMap

◆ OperandSet

Constructor & Destructor Documentation

◆ BlockAssessments() [1/2]

v8::internal::compiler::BlockAssessments::BlockAssessments ( Zone * zone,
int spill_slot_delta,
const InstructionSequence * sequence )
inlineexplicit

Definition at line 140 of file register-allocator-verifier.h.

◆ BlockAssessments() [2/2]

v8::internal::compiler::BlockAssessments::BlockAssessments ( const BlockAssessments & )
delete

Member Function Documentation

◆ AddDefinition()

void v8::internal::compiler::BlockAssessments::AddDefinition ( InstructionOperand operand,
int virtual_register )
inline

Definition at line 156 of file register-allocator-verifier.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ CheckReferenceMap()

void v8::internal::compiler::BlockAssessments::CheckReferenceMap ( const ReferenceMap * reference_map)

Definition at line 330 of file register-allocator-verifier.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ CopyFrom()

void v8::internal::compiler::BlockAssessments::CopyFrom ( const BlockAssessments * other)
inline

Definition at line 170 of file register-allocator-verifier.h.

Here is the caller graph for this function:

◆ Drop()

void v8::internal::compiler::BlockAssessments::Drop ( InstructionOperand operand)
inline

Definition at line 151 of file register-allocator-verifier.h.

Here is the caller graph for this function:

◆ DropRegisters()

void v8::internal::compiler::BlockAssessments::DropRegisters ( )

Definition at line 321 of file register-allocator-verifier.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ IsStaleReferenceStackSlot()

bool v8::internal::compiler::BlockAssessments::IsStaleReferenceStackSlot ( InstructionOperand op,
std::optional< int > vreg = std::nullopt )

Definition at line 357 of file register-allocator-verifier.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ map() [1/2]

OperandMap & v8::internal::compiler::BlockAssessments::map ( )
inline

Definition at line 182 of file register-allocator-verifier.h.

Here is the caller graph for this function:

◆ map() [2/2]

const OperandMap & v8::internal::compiler::BlockAssessments::map ( ) const
inline

Definition at line 183 of file register-allocator-verifier.h.

◆ operator=()

BlockAssessments & v8::internal::compiler::BlockAssessments::operator= ( const BlockAssessments & )
delete

◆ PerformMoves()

void v8::internal::compiler::BlockAssessments::PerformMoves ( const Instruction * instruction)

Definition at line 282 of file register-allocator-verifier.cc.

Here is the caller graph for this function:

◆ PerformParallelMoves()

void v8::internal::compiler::BlockAssessments::PerformParallelMoves ( const ParallelMove * moves)

Definition at line 291 of file register-allocator-verifier.cc.

◆ Print()

void v8::internal::compiler::BlockAssessments::Print ( ) const

Definition at line 367 of file register-allocator-verifier.cc.

Here is the call graph for this function:

◆ spill_slot_delta()

int v8::internal::compiler::BlockAssessments::spill_slot_delta ( ) const
inline

Definition at line 190 of file register-allocator-verifier.h.

◆ stale_ref_stack_slots() [1/2]

OperandSet & v8::internal::compiler::BlockAssessments::stale_ref_stack_slots ( )
inline

Definition at line 185 of file register-allocator-verifier.h.

Here is the caller graph for this function:

◆ stale_ref_stack_slots() [2/2]

const OperandSet & v8::internal::compiler::BlockAssessments::stale_ref_stack_slots ( ) const
inline

Definition at line 186 of file register-allocator-verifier.h.

Member Data Documentation

◆ map_

OperandMap v8::internal::compiler::BlockAssessments::map_
private

Definition at line 195 of file register-allocator-verifier.h.

◆ map_for_moves_

OperandMap v8::internal::compiler::BlockAssessments::map_for_moves_
private

Definition at line 196 of file register-allocator-verifier.h.

◆ sequence_

const InstructionSequence* v8::internal::compiler::BlockAssessments::sequence_
private

Definition at line 202 of file register-allocator-verifier.h.

◆ spill_slot_delta_

int v8::internal::compiler::BlockAssessments::spill_slot_delta_
private

Definition at line 200 of file register-allocator-verifier.h.

◆ stale_ref_stack_slots_

OperandSet v8::internal::compiler::BlockAssessments::stale_ref_stack_slots_
private

Definition at line 199 of file register-allocator-verifier.h.

◆ zone_

Zone* v8::internal::compiler::BlockAssessments::zone_
private

Definition at line 201 of file register-allocator-verifier.h.


The documentation for this class was generated from the following files: