V8 Project
v8::internal::StringCharAtGenerator Class Reference

#include <code-stubs.h>

+ Collaboration diagram for v8::internal::StringCharAtGenerator:

Public Member Functions

 StringCharAtGenerator (Register object, Register index, Register scratch, Register result, Label *receiver_not_string, Label *index_not_number, Label *index_out_of_range, StringIndexFlags index_flags)
 
void GenerateFast (MacroAssembler *masm)
 
void GenerateSlow (MacroAssembler *masm, const RuntimeCallHelper &call_helper)
 
void SkipSlow (MacroAssembler *masm, Label *bailout)
 

Private Member Functions

 DISALLOW_COPY_AND_ASSIGN (StringCharAtGenerator)
 

Private Attributes

StringCharCodeAtGenerator char_code_at_generator_
 
StringCharFromCodeGenerator char_from_code_generator_
 

Detailed Description

Definition at line 1713 of file code-stubs.h.

Constructor & Destructor Documentation

◆ StringCharAtGenerator()

v8::internal::StringCharAtGenerator::StringCharAtGenerator ( Register  object,
Register  index,
Register  scratch,
Register  result,
Label *  receiver_not_string,
Label *  index_not_number,
Label *  index_out_of_range,
StringIndexFlags  index_flags 
)
inline

Definition at line 1715 of file code-stubs.h.

1723  : char_code_at_generator_(object,
1724  index,
1725  scratch,
1726  receiver_not_string,
1727  index_not_number,
1728  index_out_of_range,
1729  index_flags),
1730  char_from_code_generator_(scratch, result) {}
StringCharFromCodeGenerator char_from_code_generator_
Definition: code-stubs.h:1756
StringCharCodeAtGenerator char_code_at_generator_
Definition: code-stubs.h:1755

Member Function Documentation

◆ DISALLOW_COPY_AND_ASSIGN()

v8::internal::StringCharAtGenerator::DISALLOW_COPY_AND_ASSIGN ( StringCharAtGenerator  )
private

◆ GenerateFast()

void v8::internal::StringCharAtGenerator::GenerateFast ( MacroAssembler masm)
inline

Definition at line 1734 of file code-stubs.h.

1734  {
1737  }
void GenerateFast(MacroAssembler *masm)
void GenerateFast(MacroAssembler *masm)

References char_code_at_generator_, char_from_code_generator_, v8::internal::StringCharCodeAtGenerator::GenerateFast(), and v8::internal::StringCharFromCodeGenerator::GenerateFast().

+ Here is the call graph for this function:

◆ GenerateSlow()

void v8::internal::StringCharAtGenerator::GenerateSlow ( MacroAssembler masm,
const RuntimeCallHelper call_helper 
)
inline

Definition at line 1742 of file code-stubs.h.

1743  {
1744  char_code_at_generator_.GenerateSlow(masm, call_helper);
1745  char_from_code_generator_.GenerateSlow(masm, call_helper);
1746  }
void GenerateSlow(MacroAssembler *masm, const RuntimeCallHelper &call_helper)
void GenerateSlow(MacroAssembler *masm, const RuntimeCallHelper &call_helper)

References char_code_at_generator_, char_from_code_generator_, v8::internal::StringCharCodeAtGenerator::GenerateSlow(), and v8::internal::StringCharFromCodeGenerator::GenerateSlow().

+ Here is the call graph for this function:

◆ SkipSlow()

void v8::internal::StringCharAtGenerator::SkipSlow ( MacroAssembler masm,
Label *  bailout 
)
inline

Definition at line 1749 of file code-stubs.h.

1749  {
1750  char_code_at_generator_.SkipSlow(masm, bailout);
1751  char_from_code_generator_.SkipSlow(masm, bailout);
1752  }
void SkipSlow(MacroAssembler *masm, Label *bailout)
Definition: code-stubs.h:1640
void SkipSlow(MacroAssembler *masm, Label *bailout)
Definition: code-stubs.h:1687

References char_code_at_generator_, char_from_code_generator_, v8::internal::StringCharCodeAtGenerator::SkipSlow(), and v8::internal::StringCharFromCodeGenerator::SkipSlow().

+ Here is the call graph for this function:

Member Data Documentation

◆ char_code_at_generator_

StringCharCodeAtGenerator v8::internal::StringCharAtGenerator::char_code_at_generator_
private

Definition at line 1755 of file code-stubs.h.

Referenced by GenerateFast(), GenerateSlow(), and SkipSlow().

◆ char_from_code_generator_

StringCharFromCodeGenerator v8::internal::StringCharAtGenerator::char_from_code_generator_
private

Definition at line 1756 of file code-stubs.h.

Referenced by GenerateFast(), GenerateSlow(), and SkipSlow().


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