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

#include <string-builder-optimizer.h>

Collaboration diagram for v8::internal::compiler::OneOrTwoByteAnalysis:

Public Types

enum class  State : uint8_t { kUnknown , kOneByte , kTwoByte , kCantKnow }
 

Public Member Functions

 OneOrTwoByteAnalysis (TFGraph *graph, Zone *zone, JSHeapBroker *broker)
 
State OneOrTwoByte (Node *node)
 

Static Public Member Functions

static State ConcatResultIsOneOrTwoByte (State a, State b)
 

Private Member Functions

std::optional< std::pair< int64_t, int64_t > > TryGetRange (Node *node)
 
JSHeapBrokerbroker ()
 

Private Attributes

ZoneVector< Statestates_
 
JSHeapBrokerbroker_
 

Detailed Description

Definition at line 146 of file string-builder-optimizer.h.

Member Enumeration Documentation

◆ State

Enumerator
kUnknown 
kOneByte 
kTwoByte 
kCantKnow 

Definition at line 158 of file string-builder-optimizer.h.

Constructor & Destructor Documentation

◆ OneOrTwoByteAnalysis()

v8::internal::compiler::OneOrTwoByteAnalysis::OneOrTwoByteAnalysis ( TFGraph * graph,
Zone * zone,
JSHeapBroker * broker )
inline

Definition at line 155 of file string-builder-optimizer.h.

Member Function Documentation

◆ broker()

JSHeapBroker * v8::internal::compiler::OneOrTwoByteAnalysis::broker ( )
inlineprivate

Definition at line 208 of file string-builder-optimizer.h.

Here is the caller graph for this function:

◆ ConcatResultIsOneOrTwoByte()

OneOrTwoByteAnalysis::State v8::internal::compiler::OneOrTwoByteAnalysis::ConcatResultIsOneOrTwoByte ( State a,
State b )
static

Definition at line 71 of file string-builder-optimizer.cc.

Here is the caller graph for this function:

◆ OneOrTwoByte()

OneOrTwoByteAnalysis::State v8::internal::compiler::OneOrTwoByteAnalysis::OneOrTwoByte ( Node * node)

Definition at line 228 of file string-builder-optimizer.cc.

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

◆ TryGetRange()

std::optional< std::pair< int64_t, int64_t > > v8::internal::compiler::OneOrTwoByteAnalysis::TryGetRange ( Node * node)
private

Definition at line 83 of file string-builder-optimizer.cc.

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

Member Data Documentation

◆ broker_

JSHeapBroker* v8::internal::compiler::OneOrTwoByteAnalysis::broker_
private

Definition at line 211 of file string-builder-optimizer.h.

◆ states_

ZoneVector<State> v8::internal::compiler::OneOrTwoByteAnalysis::states_
private

Definition at line 210 of file string-builder-optimizer.h.


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