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

#include <register-allocator.h>

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

Public Member Functions

 LiveRangeBundle (Zone *zone, int id)
 
int id () const
 
int reg () const
 
void set_reg (int reg)
 
void MergeSpillRangesAndClear ()
 
bool TryAddRange (TopLevelLiveRange *range)
 
- 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
 

Static Public Member Functions

static LiveRangeBundleTryMerge (LiveRangeBundle *lhs, LiveRangeBundle *rhs)
 

Private Member Functions

void AddRange (TopLevelLiveRange *range)
 

Private Attributes

ZoneVector< TopLevelLiveRange * > ranges_
 
ZoneVector< UseIntervalintervals_
 
int id_
 
int reg_ = kUnassignedRegister
 

Detailed Description

Definition at line 981 of file register-allocator.h.

Constructor & Destructor Documentation

◆ LiveRangeBundle()

v8::internal::compiler::LiveRangeBundle::LiveRangeBundle ( Zone * zone,
int id )
inlineexplicit

Definition at line 983 of file register-allocator.h.

Member Function Documentation

◆ AddRange()

void v8::internal::compiler::LiveRangeBundle::AddRange ( TopLevelLiveRange * range)
private

Definition at line 2638 of file register-allocator.cc.

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

◆ id()

int v8::internal::compiler::LiveRangeBundle::id ( ) const
inline

Definition at line 986 of file register-allocator.h.

Here is the caller graph for this function:

◆ MergeSpillRangesAndClear()

void v8::internal::compiler::LiveRangeBundle::MergeSpillRangesAndClear ( )

Definition at line 2689 of file register-allocator.cc.

◆ reg()

int v8::internal::compiler::LiveRangeBundle::reg ( ) const
inline

Definition at line 988 of file register-allocator.h.

Here is the caller graph for this function:

◆ set_reg()

void v8::internal::compiler::LiveRangeBundle::set_reg ( int reg)
inline

Definition at line 989 of file register-allocator.h.

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

◆ TryAddRange()

bool v8::internal::compiler::LiveRangeBundle::TryAddRange ( TopLevelLiveRange * range)

Definition at line 2628 of file register-allocator.cc.

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

◆ TryMerge()

LiveRangeBundle * v8::internal::compiler::LiveRangeBundle::TryMerge ( LiveRangeBundle * lhs,
LiveRangeBundle * rhs )
static

Definition at line 2661 of file register-allocator.cc.

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

Member Data Documentation

◆ id_

int v8::internal::compiler::LiveRangeBundle::id_
private

Definition at line 1008 of file register-allocator.h.

◆ intervals_

ZoneVector<UseInterval> v8::internal::compiler::LiveRangeBundle::intervals_
private

Definition at line 1006 of file register-allocator.h.

◆ ranges_

ZoneVector<TopLevelLiveRange*> v8::internal::compiler::LiveRangeBundle::ranges_
private

Definition at line 1004 of file register-allocator.h.

◆ reg_

int v8::internal::compiler::LiveRangeBundle::reg_ = kUnassignedRegister
private

Definition at line 1009 of file register-allocator.h.


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