v8  7.0.276 (node 11.14.0)
V8 is Google's open source JavaScript engine
v8::internal Namespace Reference

Namespaces

 wasm
 

Data Structures

class  CustomArguments
 
struct  SmiTagging
 
struct  SmiTagging< 4 >
 
struct  SmiTagging< 8 >
 
class  Internals
 
struct  CastCheck
 

Typedefs

typedef SmiTagging< kApiPointerSizePlatformSmiTagging
 

Functions

template<int kSmiShiftSize>
V8_INLINE internal::Object * IntToSmi (int value)
 
constexpr bool SmiValuesAre31Bits ()
 
constexpr bool SmiValuesAre32Bits ()
 
template<class T >
V8_INLINE void PerformCastCheck (T *data)
 

Variables

const int kApiPointerSize = sizeof(void*)
 
const int kApiDoubleSize = sizeof(double)
 
const int kApiIntSize = sizeof(int)
 
const int kApiInt64Size = sizeof(int64_t)
 
const int kHeapObjectTag = 1
 
const int kWeakHeapObjectTag = 3
 
const int kHeapObjectTagSize = 2
 
const intptr_t kHeapObjectTagMask = (1 << kHeapObjectTagSize) - 1
 
const int kSmiTag = 0
 
const int kSmiTagSize = 1
 
const intptr_t kSmiTagMask = (1 << kSmiTagSize) - 1
 
const int kSmiShiftSize = PlatformSmiTagging::kSmiShiftSize
 
const int kSmiValueSize = PlatformSmiTagging::kSmiValueSize
 
const int kSmiMinValue = (static_cast<unsigned int>(-1)) << (kSmiValueSize - 1)
 
const int kSmiMaxValue = -(kSmiMinValue + 1)
 

Typedef Documentation

◆ PlatformSmiTagging

Definition at line 248 of file v8.h.

Function Documentation

◆ IntToSmi()

V8_INLINE internal::Object* v8::internal::IntToSmi ( int  value)

Definition at line 185 of file v8.h.

References kSmiTag, and kSmiTagSize.

Referenced by SmiTagging< 4 >::IntToSmi(), and SmiTagging< 8 >::IntToSmi().

◆ PerformCastCheck()

V8_INLINE void v8::internal::PerformCastCheck ( T *  data)

Definition at line 9537 of file v8.h.

◆ SmiValuesAre31Bits()

constexpr bool v8::internal::SmiValuesAre31Bits ( )
constexpr

Definition at line 255 of file v8.h.

References kSmiValueSize.

◆ SmiValuesAre32Bits()

constexpr bool v8::internal::SmiValuesAre32Bits ( )
constexpr

Definition at line 256 of file v8.h.

References kSmiValueSize.

Variable Documentation

◆ kApiDoubleSize

const int kApiDoubleSize = sizeof(double)

Definition at line 166 of file v8.h.

◆ kApiInt64Size

const int kApiInt64Size = sizeof(int64_t)

Definition at line 168 of file v8.h.

◆ kApiIntSize

const int kApiIntSize = sizeof(int)

Definition at line 167 of file v8.h.

◆ kApiPointerSize

const int kApiPointerSize = sizeof(void*)

◆ kHeapObjectTag

const int kHeapObjectTag = 1

Definition at line 171 of file v8.h.

Referenced by Internals::HasHeapObjectTag(), and Internals::ReadField().

◆ kHeapObjectTagMask

const intptr_t kHeapObjectTagMask = (1 << kHeapObjectTagSize) - 1

Definition at line 174 of file v8.h.

Referenced by Internals::HasHeapObjectTag().

◆ kHeapObjectTagSize

const int kHeapObjectTagSize = 2

Definition at line 173 of file v8.h.

◆ kSmiMaxValue

const int kSmiMaxValue = -(kSmiMinValue + 1)

Definition at line 254 of file v8.h.

◆ kSmiMinValue

const int kSmiMinValue = (static_cast<unsigned int>(-1)) << (kSmiValueSize - 1)

Definition at line 253 of file v8.h.

◆ kSmiShiftSize

const int kSmiShiftSize = PlatformSmiTagging::kSmiShiftSize

Definition at line 251 of file v8.h.

◆ kSmiTag

const int kSmiTag = 0

Definition at line 177 of file v8.h.

Referenced by IntToSmi().

◆ kSmiTagMask

const intptr_t kSmiTagMask = (1 << kSmiTagSize) - 1

Definition at line 179 of file v8.h.

◆ kSmiTagSize

const int kSmiTagSize = 1

Definition at line 178 of file v8.h.

Referenced by IntToSmi(), SmiTagging< 4 >::SmiToInt(), and SmiTagging< 8 >::SmiToInt().

◆ kSmiValueSize

const int kSmiValueSize = PlatformSmiTagging::kSmiValueSize

Definition at line 252 of file v8.h.

Referenced by SmiValuesAre31Bits(), and SmiValuesAre32Bits().

◆ kWeakHeapObjectTag

const int kWeakHeapObjectTag = 3

Definition at line 172 of file v8.h.