v8
3.14.5(node0.10.28)
V8 is Google's open source JavaScript engine
|
#include <hydrogen-instructions.h>
Public Types | |
enum | Kind { kNone, kTagged, kDouble, kInteger32, kExternal, kNumRepresentations } |
Public Member Functions | |
Representation () | |
bool | Equals (const Representation &other) |
Kind | kind () const |
bool | IsNone () const |
bool | IsTagged () const |
bool | IsInteger32 () const |
bool | IsDouble () const |
bool | IsExternal () const |
bool | IsSpecialization () const |
const char * | Mnemonic () const |
Static Public Member Functions | |
static Representation | None () |
static Representation | Tagged () |
static Representation | Integer32 () |
static Representation | Double () |
static Representation | External () |
Definition at line 310 of file hydrogen-instructions.h.
enum Kind |
Enumerator | |
---|---|
kNone | |
kTagged | |
kDouble | |
kInteger32 | |
kExternal | |
kNumRepresentations |
Definition at line 312 of file hydrogen-instructions.h.
|
inline |
Definition at line 321 of file hydrogen-instructions.h.
Referenced by Representation::Double(), Representation::External(), Representation::Integer32(), Representation::None(), and Representation::Tagged().
|
inlinestatic |
Definition at line 326 of file hydrogen-instructions.h.
References Representation::kDouble, and Representation::Representation().
Referenced by HLoadKeyedFastDoubleElement::HLoadKeyedFastDoubleElement(), HLoadKeyedSpecializedArrayElement::HLoadKeyedSpecializedArrayElement(), HPower::HPower(), HRandom::HRandom(), HUnaryMathOperation::HUnaryMathOperation(), HPhi::InferredRepresentation(), HMathMinMax::InferredRepresentation(), HUnaryMathOperation::RequiredInputRepresentation(), HPower::RequiredInputRepresentation(), HStoreKeyedFastDoubleElement::RequiredInputRepresentation(), and HStoreKeyedSpecializedArrayElement::RequiredInputRepresentation().
|
inline |
Definition at line 329 of file hydrogen-instructions.h.
Referenced by HGraph::ComputeMinusZeroChecks(), HValue::Equals(), and HChange::HChange().
|
inlinestatic |
Definition at line 327 of file hydrogen-instructions.h.
References Representation::kExternal, and Representation::Representation().
Referenced by HLoadExternalArrayPointer::HLoadExternalArrayPointer(), HLoadKeyedSpecializedArrayElement::RequiredInputRepresentation(), and HStoreKeyedSpecializedArrayElement::RequiredInputRepresentation().
|
inlinestatic |
Definition at line 325 of file hydrogen-instructions.h.
References Representation::kInteger32, and Representation::Representation().
Referenced by HConstant::CopyToTruncatedInt32(), HArgumentsLength::HArgumentsLength(), HBitNot::HBitNot(), HBoundsCheck::HBoundsCheck(), HClampToUint8::HClampToUint8(), HElementsKind::HElementsKind(), HLoadKeyedSpecializedArrayElement::HLoadKeyedSpecializedArrayElement(), HMathFloorOfDiv::HMathFloorOfDiv(), HStringCharCodeAt::HStringCharCodeAt(), HUnaryMathOperation::HUnaryMathOperation(), HPhi::InferredRepresentation(), HMathMinMax::InferredRepresentation(), HBitNot::RequiredInputRepresentation(), HApplyArguments::RequiredInputRepresentation(), HAccessArgumentsAt::RequiredInputRepresentation(), HBoundsCheck::RequiredInputRepresentation(), HMathFloorOfDiv::RequiredInputRepresentation(), HCompareConstantEqAndBranch::RequiredInputRepresentation(), HLoadKeyedFastElement::RequiredInputRepresentation(), HLoadKeyedFastDoubleElement::RequiredInputRepresentation(), HLoadKeyedSpecializedArrayElement::RequiredInputRepresentation(), HStoreKeyedFastElement::RequiredInputRepresentation(), HStoreKeyedFastDoubleElement::RequiredInputRepresentation(), HStoreKeyedSpecializedArrayElement::RequiredInputRepresentation(), HStringCharCodeAt::RequiredInputRepresentation(), and HStringCharFromCode::RequiredInputRepresentation().
|
inline |
Definition at line 337 of file hydrogen-instructions.h.
References Representation::kDouble.
Referenced by HGraph::ComputeMinusZeroChecks(), HConstant::CopyToRepresentation(), HConstant::EmitAtUses(), HPhi::InferredRepresentation(), HGraph::MarkDeoptimizeOnUndefined(), and HCompareIDAndBranch::SetInputRepresentation().
|
inline |
Definition at line 338 of file hydrogen-instructions.h.
References Representation::kExternal.
|
inline |
Definition at line 336 of file hydrogen-instructions.h.
References Representation::kInteger32.
Referenced by HBitNot::Canonicalize(), HGraph::ComputeMinusZeroChecks(), HGraph::ComputeSafeUint32Operations(), HConstant::CopyToRepresentation(), BoundsCheckBbData::CoverCheck(), BoundsCheckKey::Create(), HPhi::InferredRepresentation(), HGraph::InsertRepresentationChanges(), HBitwiseBinaryOperation::RepresentationChanged(), and HCompareIDAndBranch::SetInputRepresentation().
|
inline |
Definition at line 334 of file hydrogen-instructions.h.
References Representation::kNone.
Referenced by HValue::ChangeRepresentation(), HChange::HChange(), and HValue::set_representation().
|
inline |
Definition at line 339 of file hydrogen-instructions.h.
References Representation::kDouble, and Representation::kInteger32.
|
inline |
Definition at line 335 of file hydrogen-instructions.h.
References Representation::kTagged.
Referenced by LEnvironment::AddValue(), HGraph::ComputeMinusZeroChecks(), HChange::HChange(), HPhi::InferredRepresentation(), HAdd::IsCommutative(), HMul::IsCommutative(), HBitwiseBinaryOperation::RepresentationChanged(), and HArithmeticBinaryOperation::RepresentationChanged().
|
inline |
Definition at line 333 of file hydrogen-instructions.h.
Referenced by HPhi::InitRealUses().
const char * Mnemonic | ( | ) | const |
Definition at line 56 of file hydrogen-instructions.cc.
References Representation::kDouble, Representation::kExternal, Representation::kInteger32, Representation::kNone, Representation::kTagged, v8::internal::NULL, and UNREACHABLE.
Referenced by HPhi::InitRealUses(), and HValue::PrintNameTo().
|
inlinestatic |
Definition at line 323 of file hydrogen-instructions.h.
References Representation::kNone, and Representation::Representation().
Referenced by HBitwiseBinaryOperation::HBitwiseBinaryOperation(), HPhi::InferredRepresentation(), HBlockEntry::RequiredInputRepresentation(), HSoftDeoptimize::RequiredInputRepresentation(), HDeoptimize::RequiredInputRepresentation(), HGoto::RequiredInputRepresentation(), HBranch::RequiredInputRepresentation(), HAbnormalExit::RequiredInputRepresentation(), HUseConst::RequiredInputRepresentation(), HClampToUint8::RequiredInputRepresentation(), HSimulate::RequiredInputRepresentation(), HEnterInlined::RequiredInputRepresentation(), HLeaveInlined::RequiredInputRepresentation(), HThisFunction::RequiredInputRepresentation(), HContext::RequiredInputRepresentation(), HCallConstantFunction::RequiredInputRepresentation(), HCallKnownGlobal::RequiredInputRepresentation(), HUnaryMathOperation::RequiredInputRepresentation(), HCheckPrototypeMaps::RequiredInputRepresentation(), HArgumentsObject::RequiredInputRepresentation(), HConstant::RequiredInputRepresentation(), HArgumentsElements::RequiredInputRepresentation(), HIsConstructCallAndBranch::RequiredInputRepresentation(), HPower::RequiredInputRepresentation(), HOsrEntry::RequiredInputRepresentation(), HParameter::RequiredInputRepresentation(), HUnknownOSRValue::RequiredInputRepresentation(), HLoadGlobalCell::RequiredInputRepresentation(), HLoadKeyedFastElement::RequiredInputRepresentation(), HLoadKeyedFastDoubleElement::RequiredInputRepresentation(), and HLoadKeyedSpecializedArrayElement::RequiredInputRepresentation().
|
inlinestatic |
Definition at line 324 of file hydrogen-instructions.h.
References Representation::kTagged, and Representation::Representation().
Referenced by HCompareGeneric::GetInputRepresentation(), HStringCompareAndBranch::GetInputRepresentation(), HAccessArgumentsAt::HAccessArgumentsAt(), HAllocateObject::HAllocateObject(), HApplyArguments::HApplyArguments(), HArgumentsElements::HArgumentsElements(), HArgumentsObject::HArgumentsObject(), HArithmeticBinaryOperation::HArithmeticBinaryOperation(), HBitwiseBinaryOperation::HBitwiseBinaryOperation(), HCall< 2 >::HCall(), HCheckFunction::HCheckFunction(), HCheckMaps::HCheckMaps(), HCheckMapValue::HCheckMapValue(), HCheckNonSmi::HCheckNonSmi(), HCheckSmi::HCheckSmi(), HCompareGeneric::HCompareGeneric(), HContext::HContext(), HDateField::HDateField(), HDeclareGlobals::HDeclareGlobals(), HDeleteProperty::HDeleteProperty(), HFixedArrayBaseLength::HFixedArrayBaseLength(), HForInCacheArray::HForInCacheArray(), HForInPrepareMap::HForInPrepareMap(), HFunctionLiteral::HFunctionLiteral(), HGetCachedArrayIndex::HGetCachedArrayIndex(), HGlobalObject::HGlobalObject(), HGlobalReceiver::HGlobalReceiver(), HIn::HIn(), HInstanceOf::HInstanceOf(), HInstanceOfKnownGlobal::HInstanceOfKnownGlobal(), HJSArrayLength::HJSArrayLength(), HLoadContextSlot::HLoadContextSlot(), HLoadElements::HLoadElements(), HLoadFieldByIndex::HLoadFieldByIndex(), HLoadFunctionPrototype::HLoadFunctionPrototype(), HLoadGlobalCell::HLoadGlobalCell(), HLoadGlobalGeneric::HLoadGlobalGeneric(), HLoadKeyedFastElement::HLoadKeyedFastElement(), HLoadKeyedGeneric::HLoadKeyedGeneric(), HLoadNamedField::HLoadNamedField(), HLoadNamedFieldPolymorphic::HLoadNamedFieldPolymorphic(), HLoadNamedGeneric::HLoadNamedGeneric(), HMapEnumLength::HMapEnumLength(), HMaterializedLiteral< 1 >::HMaterializedLiteral(), HOuterContext::HOuterContext(), HParameter::HParameter(), HPhi::HPhi(), HPushArgument::HPushArgument(), HStoreGlobalGeneric::HStoreGlobalGeneric(), HStringAdd::HStringAdd(), HStringCharFromCode::HStringCharFromCode(), HStringCompareAndBranch::HStringCompareAndBranch(), HStringLength::HStringLength(), HThisFunction::HThisFunction(), HToFastProperties::HToFastProperties(), HTransitionElementsKind::HTransitionElementsKind(), HTypeof::HTypeof(), HUnaryMathOperation::HUnaryMathOperation(), HUnknownOSRValue::HUnknownOSRValue(), HValueOf::HValueOf(), HWrapReceiver::HWrapReceiver(), HPhi::InferredRepresentation(), HCompareMap::RequiredInputRepresentation(), HReturn::RequiredInputRepresentation(), HThrow::RequiredInputRepresentation(), HStackCheck::RequiredInputRepresentation(), HPushArgument::RequiredInputRepresentation(), HOuterContext::RequiredInputRepresentation(), HDeclareGlobals::RequiredInputRepresentation(), HGlobalObject::RequiredInputRepresentation(), HGlobalReceiver::RequiredInputRepresentation(), HUnaryCall::RequiredInputRepresentation(), HBinaryCall::RequiredInputRepresentation(), HInvokeFunction::RequiredInputRepresentation(), HCallKeyed::RequiredInputRepresentation(), HCallNamed::RequiredInputRepresentation(), HCallFunction::RequiredInputRepresentation(), HCallGlobal::RequiredInputRepresentation(), HCallNew::RequiredInputRepresentation(), HCallRuntime::RequiredInputRepresentation(), HJSArrayLength::RequiredInputRepresentation(), HFixedArrayBaseLength::RequiredInputRepresentation(), HMapEnumLength::RequiredInputRepresentation(), HElementsKind::RequiredInputRepresentation(), HUnaryMathOperation::RequiredInputRepresentation(), HLoadElements::RequiredInputRepresentation(), HLoadExternalArrayPointer::RequiredInputRepresentation(), HCheckMaps::RequiredInputRepresentation(), HCheckFunction::RequiredInputRepresentation(), HCheckInstanceType::RequiredInputRepresentation(), HCheckNonSmi::RequiredInputRepresentation(), HCheckSmi::RequiredInputRepresentation(), HWrapReceiver::RequiredInputRepresentation(), HApplyArguments::RequiredInputRepresentation(), HArgumentsLength::RequiredInputRepresentation(), HAccessArgumentsAt::RequiredInputRepresentation(), HBoundsCheck::RequiredInputRepresentation(), HBitwiseBinaryOperation::RequiredInputRepresentation(), HArithmeticBinaryOperation::RequiredInputRepresentation(), HCompareGeneric::RequiredInputRepresentation(), HCompareObjectEqAndBranch::RequiredInputRepresentation(), HIsNilAndBranch::RequiredInputRepresentation(), HIsObjectAndBranch::RequiredInputRepresentation(), HIsStringAndBranch::RequiredInputRepresentation(), HIsSmiAndBranch::RequiredInputRepresentation(), HIsUndetectableAndBranch::RequiredInputRepresentation(), HStringCompareAndBranch::RequiredInputRepresentation(), HHasInstanceTypeAndBranch::RequiredInputRepresentation(), HHasCachedArrayIndexAndBranch::RequiredInputRepresentation(), HGetCachedArrayIndex::RequiredInputRepresentation(), HClassOfTestAndBranch::RequiredInputRepresentation(), HTypeofIsAndBranch::RequiredInputRepresentation(), HInstanceOf::RequiredInputRepresentation(), HInstanceOfKnownGlobal::RequiredInputRepresentation(), HRandom::RequiredInputRepresentation(), HMathMinMax::RequiredInputRepresentation(), HCallStub::RequiredInputRepresentation(), HLoadGlobalGeneric::RequiredInputRepresentation(), HStoreGlobalCell::RequiredInputRepresentation(), HStoreGlobalGeneric::RequiredInputRepresentation(), HLoadContextSlot::RequiredInputRepresentation(), HStoreContextSlot::RequiredInputRepresentation(), HLoadNamedField::RequiredInputRepresentation(), HLoadNamedFieldPolymorphic::RequiredInputRepresentation(), HLoadNamedGeneric::RequiredInputRepresentation(), HLoadFunctionPrototype::RequiredInputRepresentation(), HLoadKeyedFastElement::RequiredInputRepresentation(), HLoadKeyedFastDoubleElement::RequiredInputRepresentation(), HLoadKeyedGeneric::RequiredInputRepresentation(), HStoreNamedField::RequiredInputRepresentation(), HStoreNamedGeneric::RequiredInputRepresentation(), HStoreKeyedFastElement::RequiredInputRepresentation(), HStoreKeyedFastDoubleElement::RequiredInputRepresentation(), HStoreKeyedGeneric::RequiredInputRepresentation(), HTransitionElementsKind::RequiredInputRepresentation(), HStringAdd::RequiredInputRepresentation(), HStringCharCodeAt::RequiredInputRepresentation(), HStringCharFromCode::RequiredInputRepresentation(), HStringLength::RequiredInputRepresentation(), HAllocateObject::RequiredInputRepresentation(), HFastLiteral::RequiredInputRepresentation(), HArrayLiteral::RequiredInputRepresentation(), HObjectLiteral::RequiredInputRepresentation(), HRegExpLiteral::RequiredInputRepresentation(), HFunctionLiteral::RequiredInputRepresentation(), HTypeof::RequiredInputRepresentation(), HToFastProperties::RequiredInputRepresentation(), HValueOf::RequiredInputRepresentation(), HDateField::RequiredInputRepresentation(), HDeleteProperty::RequiredInputRepresentation(), HIn::RequiredInputRepresentation(), HCheckMapValue::RequiredInputRepresentation(), HForInPrepareMap::RequiredInputRepresentation(), HForInCacheArray::RequiredInputRepresentation(), and HLoadFieldByIndex::RequiredInputRepresentation().