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

#include <instructions-arm64.h>

Collaboration diagram for v8::internal::NEONFormatDecoder:

Public Types

enum  SubstitutionMode { kPlaceholder , kFormat }
 

Public Member Functions

 NEONFormatDecoder (const Instruction *instr)
 
 NEONFormatDecoder (const Instruction *instr, const NEONFormatMap *format)
 
 NEONFormatDecoder (const Instruction *instr, const NEONFormatMap *format0, const NEONFormatMap *format1)
 
 NEONFormatDecoder (const Instruction *instr, const NEONFormatMap *format0, const NEONFormatMap *format1, const NEONFormatMap *format2)
 
void SetFormatMaps (const NEONFormatMap *format0, const NEONFormatMap *format1=nullptr, const NEONFormatMap *format2=nullptr)
 
void SetFormatMap (unsigned index, const NEONFormatMap *format)
 
const char * SubstitutePlaceholders (const char *string)
 
const char * Substitute (const char *string, SubstitutionMode mode0=kFormat, SubstitutionMode mode1=kFormat, SubstitutionMode mode2=kFormat, SubstitutionMode mode3=kFormat)
 
const char * Mnemonic (const char *mnemonic)
 
VectorFormat GetVectorFormat (int format_index=0)
 
VectorFormat GetVectorFormat (const NEONFormatMap *format_map)
 

Static Public Member Functions

static const NEONFormatMapIntegerFormatMap ()
 
static const NEONFormatMapLongIntegerFormatMap ()
 
static const NEONFormatMapFPFormatMap ()
 
static const NEONFormatMapFPHPFormatMap ()
 
static const NEONFormatMapLoadStoreFormatMap ()
 
static const NEONFormatMapLogicalFormatMap ()
 
static const NEONFormatMapTriangularFormatMap ()
 
static const NEONFormatMapScalarFormatMap ()
 
static const NEONFormatMapLongScalarFormatMap ()
 
static const NEONFormatMapFPScalarFormatMap ()
 
static const NEONFormatMapTriangularScalarFormatMap ()
 

Private Member Functions

const char * GetSubstitute (int index, SubstitutionMode mode)
 
NEONFormat GetNEONFormat (const NEONFormatMap *format_map)
 
uint8_t PickBits (const uint8_t bits[])
 

Static Private Member Functions

static const char * NEONFormatAsString (NEONFormat format)
 
static const char * NEONFormatAsPlaceholder (NEONFormat format)
 

Private Attributes

Instr instrbits_
 
const NEONFormatMapformats_ [4]
 
char form_buffer_ [64]
 
char mne_buffer_ [16]
 

Detailed Description

Definition at line 637 of file instructions-arm64.h.

Member Enumeration Documentation

◆ SubstitutionMode

Enumerator
kPlaceholder 
kFormat 

Definition at line 639 of file instructions-arm64.h.

Constructor & Destructor Documentation

◆ NEONFormatDecoder() [1/4]

v8::internal::NEONFormatDecoder::NEONFormatDecoder ( const Instruction * instr)
explicit

◆ NEONFormatDecoder() [2/4]

v8::internal::NEONFormatDecoder::NEONFormatDecoder ( const Instruction * instr,
const NEONFormatMap * format )

◆ NEONFormatDecoder() [3/4]

v8::internal::NEONFormatDecoder::NEONFormatDecoder ( const Instruction * instr,
const NEONFormatMap * format0,
const NEONFormatMap * format1 )

◆ NEONFormatDecoder() [4/4]

v8::internal::NEONFormatDecoder::NEONFormatDecoder ( const Instruction * instr,
const NEONFormatMap * format0,
const NEONFormatMap * format1,
const NEONFormatMap * format2 )

Member Function Documentation

◆ FPFormatMap()

static const NEONFormatMap * v8::internal::NEONFormatDecoder::FPFormatMap ( )
inlinestatic

Definition at line 695 of file instructions-arm64.h.

◆ FPHPFormatMap()

static const NEONFormatMap * v8::internal::NEONFormatDecoder::FPHPFormatMap ( )
inlinestatic

Definition at line 705 of file instructions-arm64.h.

◆ FPScalarFormatMap()

static const NEONFormatMap * v8::internal::NEONFormatDecoder::FPScalarFormatMap ( )
inlinestatic

Definition at line 756 of file instructions-arm64.h.

◆ GetNEONFormat()

NEONFormat v8::internal::NEONFormatDecoder::GetNEONFormat ( const NEONFormatMap * format_map)
private

◆ GetSubstitute()

const char * v8::internal::NEONFormatDecoder::GetSubstitute ( int index,
SubstitutionMode mode )
private

◆ GetVectorFormat() [1/2]

VectorFormat v8::internal::NEONFormatDecoder::GetVectorFormat ( const NEONFormatMap * format_map)

◆ GetVectorFormat() [2/2]

VectorFormat v8::internal::NEONFormatDecoder::GetVectorFormat ( int format_index = 0)

◆ IntegerFormatMap()

static const NEONFormatMap * v8::internal::NEONFormatDecoder::IntegerFormatMap ( )
inlinestatic

Definition at line 678 of file instructions-arm64.h.

◆ LoadStoreFormatMap()

static const NEONFormatMap * v8::internal::NEONFormatDecoder::LoadStoreFormatMap ( )
inlinestatic

Definition at line 712 of file instructions-arm64.h.

◆ LogicalFormatMap()

static const NEONFormatMap * v8::internal::NEONFormatDecoder::LogicalFormatMap ( )
inlinestatic

Definition at line 721 of file instructions-arm64.h.

◆ LongIntegerFormatMap()

static const NEONFormatMap * v8::internal::NEONFormatDecoder::LongIntegerFormatMap ( )
inlinestatic

Definition at line 688 of file instructions-arm64.h.

◆ LongScalarFormatMap()

static const NEONFormatMap * v8::internal::NEONFormatDecoder::LongScalarFormatMap ( )
inlinestatic

Definition at line 749 of file instructions-arm64.h.

◆ Mnemonic()

const char * v8::internal::NEONFormatDecoder::Mnemonic ( const char * mnemonic)

◆ NEONFormatAsPlaceholder()

static const char * v8::internal::NEONFormatDecoder::NEONFormatAsPlaceholder ( NEONFormat format)
staticprivate

◆ NEONFormatAsString()

static const char * v8::internal::NEONFormatDecoder::NEONFormatAsString ( NEONFormat format)
staticprivate

◆ PickBits()

uint8_t v8::internal::NEONFormatDecoder::PickBits ( const uint8_t bits[])
private

◆ ScalarFormatMap()

static const NEONFormatMap * v8::internal::NEONFormatDecoder::ScalarFormatMap ( )
inlinestatic

Definition at line 742 of file instructions-arm64.h.

◆ SetFormatMap()

void v8::internal::NEONFormatDecoder::SetFormatMap ( unsigned index,
const NEONFormatMap * format )

◆ SetFormatMaps()

void v8::internal::NEONFormatDecoder::SetFormatMaps ( const NEONFormatMap * format0,
const NEONFormatMap * format1 = nullptr,
const NEONFormatMap * format2 = nullptr )

◆ Substitute()

const char * v8::internal::NEONFormatDecoder::Substitute ( const char * string,
SubstitutionMode mode0 = kFormat,
SubstitutionMode mode1 = kFormat,
SubstitutionMode mode2 = kFormat,
SubstitutionMode mode3 = kFormat )

◆ SubstitutePlaceholders()

const char * v8::internal::NEONFormatDecoder::SubstitutePlaceholders ( const char * string)

◆ TriangularFormatMap()

static const NEONFormatMap * v8::internal::NEONFormatDecoder::TriangularFormatMap ( )
inlinestatic

Definition at line 730 of file instructions-arm64.h.

◆ TriangularScalarFormatMap()

static const NEONFormatMap * v8::internal::NEONFormatDecoder::TriangularScalarFormatMap ( )
inlinestatic

Definition at line 764 of file instructions-arm64.h.

Member Data Documentation

◆ form_buffer_

char v8::internal::NEONFormatDecoder::form_buffer_[64]
private

Definition at line 793 of file instructions-arm64.h.

◆ formats_

const NEONFormatMap* v8::internal::NEONFormatDecoder::formats_[4]
private

Definition at line 792 of file instructions-arm64.h.

◆ instrbits_

Instr v8::internal::NEONFormatDecoder::instrbits_
private

Definition at line 791 of file instructions-arm64.h.

◆ mne_buffer_

char v8::internal::NEONFormatDecoder::mne_buffer_[16]
private

Definition at line 794 of file instructions-arm64.h.


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