v8  3.25.30(node0.11.13)
V8 is Google's open source JavaScript engine
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Representation Class Reference

#include <property-details.h>

Public Types

enum  Kind {
  kNone, kInteger8, kUInteger8, kInteger16,
  kUInteger16, kSmi, kInteger32, kDouble,
  kHeapObject, kTagged, kExternal, kNumRepresentations
}
 

Public Member Functions

 Representation ()
 
bool Equals (const Representation &other) const
 
bool IsCompatibleForLoad (const Representation &other) const
 
bool IsCompatibleForStore (const Representation &other) const
 
bool is_more_general_than (const Representation &other) const
 
bool fits_into (const Representation &other) const
 
bool CanContainDouble (double value)
 
Representation generalize (Representation other)
 
int size () const
 
Kind kind () const
 
bool IsNone () const
 
bool IsInteger8 () const
 
bool IsUInteger8 () const
 
bool IsInteger16 () const
 
bool IsUInteger16 () const
 
bool IsTagged () const
 
bool IsSmi () const
 
bool IsSmiOrTagged () const
 
bool IsInteger32 () const
 
bool IsSmiOrInteger32 () const
 
bool IsDouble () const
 
bool IsHeapObject () const
 
bool IsExternal () const
 
bool IsSpecialization () const
 
const char * Mnemonic () const
 

Static Public Member Functions

static Representation None ()
 
static Representation Tagged ()
 
static Representation Integer8 ()
 
static Representation UInteger8 ()
 
static Representation Integer16 ()
 
static Representation UInteger16 ()
 
static Representation Smi ()
 
static Representation Integer32 ()
 
static Representation Double ()
 
static Representation HeapObject ()
 
static Representation External ()
 
static Representation FromKind (Kind kind)
 
static Representation FromType (Type *type)
 

Detailed Description

Definition at line 86 of file property-details.h.

Member Enumeration Documentation

enum Kind
Enumerator
kNone 
kInteger8 
kUInteger8 
kInteger16 
kUInteger16 
kSmi 
kInteger32 
kDouble 
kHeapObject 
kTagged 
kExternal 
kNumRepresentations 

Definition at line 88 of file property-details.h.

Constructor & Destructor Documentation

Member Function Documentation

bool fits_into ( const Representation other) const
inline
static Representation HeapObject ( )
inlinestatic
static Representation Integer16 ( )
inlinestatic

Definition at line 109 of file property-details.h.

References Representation::kInteger16, and Representation::Representation().

Referenced by TEST().

static Representation Integer8 ( )
inlinestatic

Definition at line 107 of file property-details.h.

References Representation::kInteger8, and Representation::Representation().

Referenced by TEST().

bool IsCompatibleForLoad ( const Representation other) const
inline

Definition at line 125 of file property-details.h.

References Representation::IsDouble().

bool IsCompatibleForStore ( const Representation other) const
inline

Definition at line 130 of file property-details.h.

References Representation::Equals().

bool IsExternal ( ) const
inline

Definition at line 186 of file property-details.h.

References Representation::kExternal.

bool IsHeapObject ( ) const
inline
bool IsInteger16 ( ) const
inline
bool IsInteger8 ( ) const
inline
bool IsUInteger16 ( ) const
inline
bool IsUInteger8 ( ) const
inline
static Representation Tagged ( )
inlinestatic

Definition at line 106 of file property-details.h.

References Representation::kTagged, and Representation::Representation().

Referenced by CodeStubGraphBuilder< Stub >::BuildCodeStub(), CodeStubGraphBuilderBase::BuildGraph(), CodeStubGraphBuilderBase::BuildLoadNamedField(), Map::CopyGeneralizeAllRepresentations(), Map::CopyReplaceDescriptors(), V8_FINAL< kOperandKind, kNumCachedOperands >::CreateAndInsertBefore(), V8_FINAL< kOperandKind, kNumCachedOperands >::ForAllocationSiteList(), V8_FINAL< kOperandKind, kNumCachedOperands >::ForArrayLength(), Representation::FromType(), Representation::generalize(), HStringCompareAndBranch::GetInputRepresentation(), BASE_EMBEDDED< Visitor >::HandlerResult(), HCall< 2 >::HCall(), V8_FINAL< kOperandKind, kNumCachedOperands >::HCapturedObject(), V8_FINAL< kOperandKind, kNumCachedOperands >::HDummyUse(), V8_FINAL< kOperandKind, kNumCachedOperands >::HLoadContextSlot(), V8_FINAL< kOperandKind, kNumCachedOperands >::HLoadFieldByIndex(), HMaterializedLiteral< 1 >::HMaterializedLiteral(), BASE_EMBEDDED< Visitor >::InterceptorResult(), V8_FINAL< kOperandKind, kNumCachedOperands >::KnownOptimalRepresentation(), HBinaryOperation::observed_input_representation(), HCompareObjectEqAndBranch::observed_input_representation(), Object::OptimalRepresentation(), LoadFieldStub::representation(), HValue::RepresentationFromUses(), V8_FINAL< kOperandKind, kNumCachedOperands >::RequiredInputRepresentation(), HUnaryCall::RequiredInputRepresentation(), HBinaryCall::RequiredInputRepresentation(), HBinaryOperation::RequiredInputRepresentation(), HCompareObjectEqAndBranch::RequiredInputRepresentation(), HStringCompareAndBranch::RequiredInputRepresentation(), HInferRepresentationPhase::Run(), TEST(), and NameDictionary::TransformPropertiesToFastFor().

static Representation UInteger16 ( )
inlinestatic

Definition at line 110 of file property-details.h.

References Representation::kUInteger16, and Representation::Representation().

Referenced by TEST().


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