Skip to content

Cache kinds CacheIR ops

David Thien edited this page Jun 7, 2022 · 3 revisions

Cache kind: BinaryArith

  • BigIntAddResult
  • BigIntBitAndResult
  • BigIntBitOrResult
  • BigIntBitXorResult
  • BigIntDivResult
  • BigIntLeftShiftResult
  • BigIntModResult
  • BigIntMulResult
  • BigIntPowResult
  • BigIntRightShiftResult
  • BigIntSubResult
  • BooleanToNumber
  • BooleanToString
  • CallInt32ToString
  • CallNumberToString
  • CallStringConcatResult
  • CallStringObjectConcatResult
  • DoubleAddResult
  • DoubleDivResult
  • DoubleModResult
  • DoubleMulResult
  • DoublePowResult
  • DoubleSubResult
  • GuardBooleanToInt32
  • GuardIsNull
  • GuardIsNullOrUndefined
  • GuardIsNumber
  • GuardIsUndefined
  • GuardStringToInt32
  • GuardStringToNumber
  • GuardToBigInt
  • GuardToBoolean
  • GuardToInt32
  • GuardToObject
  • GuardToString
  • Int32AddResult
  • Int32BitAndResult
  • Int32BitOrResult
  • Int32BitXorResult
  • Int32DivResult
  • Int32LeftShiftResult
  • Int32ModResult
  • Int32MulResult
  • Int32PowResult
  • Int32RightShiftResult
  • Int32SubResult
  • Int32URightShiftResult
  • LoadInt32Constant
  • ReturnFromIC
  • TruncateDoubleToUInt32

Cache kind: BindName

  • GuardShape
  • LoadEnclosingEnvironment
  • LoadObject
  • ReturnFromIC

Cache kind: Call

  • ArrayBufferViewByteOffsetDoubleResult
  • ArrayBufferViewByteOffsetInt32Result
  • ArrayJoinResult
  • ArrayPush
  • AssertRecoveredOnBailoutResult
  • AtomicsAddResult
  • AtomicsAndResult
  • AtomicsCompareExchangeResult
  • AtomicsExchangeResult
  • AtomicsIsLockFreeResult
  • AtomicsLoadResult
  • AtomicsOrResult
  • AtomicsStoreResult
  • AtomicsSubResult
  • AtomicsXorResult
  • Bailout
  • BigIntAsIntNResult
  • BigIntAsUintNResult
  • CallClassHook
  • CallDOMFunction
  • CallInt32ToString
  • CallIsSuspendedGeneratorResult
  • CallNativeFunction
  • CallNumberToString
  • CallRegExpMatcherResult
  • CallRegExpSearcherResult
  • CallRegExpTesterResult
  • CallScriptedFunction
  • CallSubstringKernelResult
  • CallWasmFunction
  • CompareBigIntResult
  • CompareInt32Result
  • CompareObjectResult
  • CompareStringResult
  • CompareSymbolResult
  • DoublePowResult
  • FinishBoundFunctionInitResult
  • FrameIsConstructingResult
  • GetFirstDollarIndexResult
  • GetNextMapSetEntryForIteratorResult
  • GuardAnyClass
  • GuardArgumentsObjectFlags
  • GuardArrayIsPacked
  • GuardBooleanToInt32
  • GuardClass
  • GuardDynamicSlotIsSpecificObject
  • GuardFunctionHasJitEntry
  • GuardFunctionHasNoJitEntry
  • GuardFunctionIsConstructor
  • GuardFunctionScript
  • GuardInt32IsNonNegative
  • GuardIsNotArrayBufferMaybeShared
  • GuardIsNotProxy
  • GuardIsNull
  • GuardIsNumber
  • GuardIsUndefined
  • GuardNotClassConstructor
  • GuardNumberToIntPtrIndex
  • GuardProto
  • GuardShape
  • GuardSpecificFunction
  • GuardSpecificObject
  • GuardTagNotEqual
  • GuardToBigInt
  • GuardToBoolean
  • GuardToInt32
  • GuardToInt32Index
  • GuardToInt32ModUint32
  • GuardToNonGCThing
  • GuardToObject
  • GuardToString
  • GuardToSymbol
  • GuardToUint8Clamped
  • GuardWasmArg
  • HasClassResult
  • IndirectTruncateInt32Result
  • Int32MinMax
  • Int32MinMaxArrayResult
  • Int32PowResult
  • Int32ToIntPtr
  • IsArrayResult
  • IsCallableResult
  • IsConstructorResult
  • IsCrossRealmArrayConstructorResult
  • IsObjectResult
  • IsPackedArrayResult
  • IsTypedArrayConstructorResult
  • IsTypedArrayResult
  • LoadArgumentDynamicSlot
  • LoadArgumentFixedSlot
  • LoadArrayBufferByteLengthDoubleResult
  • LoadArrayBufferByteLengthInt32Result
  • LoadArrayBufferViewLengthDoubleResult
  • LoadArrayBufferViewLengthInt32Result
  • LoadBooleanConstant
  • LoadBooleanResult
  • LoadConstantString
  • LoadDataViewValueResult
  • LoadDoubleResult
  • LoadFixedSlotResult
  • LoadFixedSlotTypedResult
  • LoadInstanceOfObjectResult
  • LoadInt32ArrayLength
  • LoadInt32Constant
  • LoadInt32Result
  • LoadObject
  • LoadProto
  • LoadStringCharCodeResult
  • LoadStringCharResult
  • LoadStringResult
  • LoadUndefined
  • LoadValueTag
  • LoadValueTruthyResult
  • MapGetBigIntResult
  • MapGetNonGCThingResult
  • MapGetObjectResult
  • MapGetResult
  • MapGetStringResult
  • MapGetSymbolResult
  • MapHasBigIntResult
  • MapHasNonGCThingResult
  • MapHasObjectResult
  • MapHasResult
  • MapHasStringResult
  • MapHasSymbolResult
  • MathAbsInt32Result
  • MathAbsNumberResult
  • MathAtan2NumberResult
  • MathCeilNumberResult
  • MathCeilToInt32Result
  • MathClz32Result
  • MathFRoundNumberResult
  • MathFloorNumberResult
  • MathFloorToInt32Result
  • MathFunctionNumberResult
  • MathHypot2NumberResult
  • MathHypot3NumberResult
  • MathHypot4NumberResult
  • MathImulResult
  • MathRandomResult
  • MathRoundToInt32Result
  • MathSignInt32Result
  • MathSignNumberResult
  • MathSignNumberToInt32Result
  • MathSqrtNumberResult
  • MathTruncNumberResult
  • MathTruncToInt32Result
  • NewArrayFromLengthResult
  • NewArrayIteratorResult
  • NewRegExpStringIteratorResult
  • NewStringIteratorResult
  • NewStringObjectResult
  • NewTypedArrayFromArrayBufferResult
  • NewTypedArrayFromArrayResult
  • NewTypedArrayFromLengthResult
  • NumberMinMax
  • NumberMinMaxArrayResult
  • ObjectCreateResult
  • ObjectToStringResult
  • PackedArrayPopResult
  • PackedArrayShiftResult
  • PackedArraySliceResult
  • ReflectGetPrototypeOfResult
  • RegExpInstanceOptimizableResult
  • RegExpPrototypeOptimizableResult
  • ReturnFromIC
  • SameValueResult
  • SetHasBigIntResult
  • SetHasNonGCThingResult
  • SetHasObjectResult
  • SetHasResult
  • SetHasStringResult
  • SetHasSymbolResult
  • StoreDataViewValueResult
  • StoreFixedSlotUndefinedResult
  • StringFromCharCodeResult
  • StringFromCodePointResult
  • StringReplaceStringResult
  • StringSplitStringResult
  • StringToLowerCaseResult
  • StringToUpperCaseResult
  • TruncateDoubleToUInt32
  • TypedArrayElementSizeResult

Cache kind: CheckPrivateField

  • GuardIsNull
  • GuardIsUndefined
  • GuardShape
  • GuardSpecificAtom
  • GuardSpecificSymbol
  • GuardToObject
  • GuardToString
  • GuardToSymbol
  • LoadBooleanResult
  • ReturnFromIC

Cache kind: Compare

  • BooleanToNumber
  • CompareBigIntInt32Result
  • CompareBigIntNumberResult
  • CompareBigIntResult
  • CompareBigIntStringResult
  • CompareDoubleResult
  • CompareInt32Result
  • CompareNullUndefinedResult
  • CompareObjectResult
  • CompareStringResult
  • CompareSymbolResult
  • GuardBooleanToInt32
  • GuardIsNull
  • GuardIsNullOrUndefined
  • GuardIsNumber
  • GuardIsUndefined
  • GuardStringToNumber
  • GuardTagNotEqual
  • GuardToBigInt
  • GuardToBoolean
  • GuardToInt32
  • GuardToObject
  • GuardToString
  • GuardToSymbol
  • LoadBooleanResult
  • LoadValueTag
  • ReturnFromIC

Cache kind: GetIntrinsic

  • LoadValueResult
  • ReturnFromIC

Cache kind: GetIterator

  • GuardAndGetIterator
  • GuardIsNullOrUndefined
  • GuardNoDenseElements
  • GuardNullProto
  • GuardProto
  • GuardShape
  • GuardToObject
  • LoadObject
  • ReturnFromIC

Cache kind: GetName

  • CallDOMGetterResult
  • CallNativeGetterResult
  • CallScriptedGetterResult
  • GuardDynamicSlotValue
  • GuardFixedSlotValue
  • GuardShape
  • LoadDynamicSlotResult
  • LoadEnclosingEnvironment
  • LoadEnvironmentDynamicSlotResult
  • LoadEnvironmentFixedSlotResult
  • LoadFixedSlotResult
  • LoadObject
  • ReturnFromIC

Cache kind: GetProp

  • ArrayBufferViewByteOffsetDoubleResult
  • ArrayBufferViewByteOffsetInt32Result
  • CallDOMGetterResult
  • CallGetSparseElementResult
  • CallNativeGetElementResult
  • CallNativeGetterResult
  • CallScriptedGetterResult
  • GuardAnyClass
  • GuardArgumentsObjectFlags
  • GuardClass
  • GuardCompartment
  • GuardDynamicSlotValue
  • GuardFixedSlotValue
  • GuardHasAttachedArrayBuffer
  • GuardHasGetterSetter
  • GuardHasProxyHandler
  • GuardIndexGreaterThanDenseInitLength
  • GuardInt32IsNonNegative
  • GuardIsNativeObject
  • GuardIsNotDOMProxy
  • GuardIsNull
  • GuardIsNumber
  • GuardIsProxy
  • GuardIsUndefined
  • GuardNoDenseElements
  • GuardNonDoubleType
  • GuardNullProto
  • GuardNumberToIntPtrIndex
  • GuardProto
  • GuardShape
  • GuardSpecificAtom
  • GuardSpecificObject
  • GuardSpecificSymbol
  • GuardStringToIndex
  • GuardToInt32
  • GuardToInt32Index
  • GuardToObject
  • GuardToString
  • GuardToSymbol
  • GuardXrayExpandoShapeAndDefaultProto
  • GuardXrayNoExpando
  • Int32ToIntPtr
  • LoadArgumentsObjectArgResult
  • LoadArgumentsObjectLengthResult
  • LoadArrayBufferByteLengthDoubleResult
  • LoadArrayBufferByteLengthInt32Result
  • LoadArrayBufferViewLengthDoubleResult
  • LoadArrayBufferViewLengthInt32Result
  • LoadDOMExpandoValue
  • LoadDOMExpandoValueGuardGeneration
  • LoadDOMExpandoValueIgnoreGeneration
  • LoadDenseElementHoleResult
  • LoadDenseElementResult
  • LoadDynamicSlotResult
  • LoadFixedSlotResult
  • LoadFunctionLengthResult
  • LoadFunctionNameResult
  • LoadInt32ArrayLength
  • LoadObject
  • LoadProto
  • LoadStringCharResult
  • LoadStringLengthResult
  • LoadTypedArrayElementResult
  • LoadUndefined
  • LoadWrapperTarget
  • MegamorphicLoadSlotByValueResult
  • MegamorphicLoadSlotResult
  • ProxyGetByValueResult
  • ProxyGetResult
  • RegExpFlagResult
  • ReturnFromIC
  • TypedArrayByteLengthDoubleResult
  • TypedArrayByteLengthInt32Result
  • WrapResult

Cache kind: HasProp

  • CallObjectHasSparseElementResult
  • GuardClass
  • GuardIsNativeObject
  • GuardIsNull
  • GuardIsNumber
  • GuardIsProxy
  • GuardIsTypedArray
  • GuardIsUndefined
  • GuardNoDenseElements
  • GuardNullProto
  • GuardNumberToIntPtrIndex
  • GuardProto
  • GuardShape
  • GuardSpecificAtom
  • GuardSpecificSymbol
  • GuardStringToIndex
  • GuardToInt32
  • GuardToInt32Index
  • GuardToObject
  • GuardToString
  • GuardToSymbol
  • Int32ToIntPtr
  • LoadBooleanResult
  • LoadDenseElementExistsResult
  • LoadDenseElementHoleExistsResult
  • LoadObject
  • LoadProto
  • LoadTypedArrayElementExistsResult
  • MegamorphicHasPropResult
  • ProxyHasPropResult
  • ReturnFromIC

Cache kind: In

  • ArrayBufferViewByteOffsetDoubleResult
  • ArrayBufferViewByteOffsetInt32Result
  • ArrayJoinResult
  • ArrayPush
  • AssertRecoveredOnBailoutResult
  • AtomicsAddResult
  • AtomicsAndResult
  • AtomicsCompareExchangeResult
  • AtomicsExchangeResult
  • AtomicsIsLockFreeResult
  • AtomicsLoadResult
  • AtomicsOrResult
  • AtomicsStoreResult
  • AtomicsSubResult
  • AtomicsXorResult
  • Bailout
  • BigIntAsIntNResult
  • BigIntAsUintNResult
  • CallInt32ToString
  • CallIsSuspendedGeneratorResult
  • CallNumberToString
  • CallRegExpMatcherResult
  • CallRegExpSearcherResult
  • CallRegExpTesterResult
  • CallSubstringKernelResult
  • CompareBigIntResult
  • CompareInt32Result
  • CompareObjectResult
  • CompareStringResult
  • CompareSymbolResult
  • DoublePowResult
  • FinishBoundFunctionInitResult
  • FrameIsConstructingResult
  • GetFirstDollarIndexResult
  • GetNextMapSetEntryForIteratorResult
  • GuardAnyClass
  • GuardArgumentsObjectFlags
  • GuardBooleanToInt32
  • GuardClass
  • GuardDynamicSlotIsSpecificObject
  • GuardInt32IsNonNegative
  • GuardIsNotArrayBufferMaybeShared
  • GuardIsNotProxy
  • GuardIsNull
  • GuardIsNumber
  • GuardIsUndefined
  • GuardNumberToIntPtrIndex
  • GuardProto
  • GuardShape
  • GuardSpecificFunction
  • GuardSpecificObject
  • GuardTagNotEqual
  • GuardToBigInt
  • GuardToBoolean
  • GuardToInt32
  • GuardToInt32Index
  • GuardToInt32ModUint32
  • GuardToNonGCThing
  • GuardToObject
  • GuardToString
  • GuardToSymbol
  • GuardToUint8Clamped
  • HasClassResult
  • IndirectTruncateInt32Result
  • Int32MinMax
  • Int32MinMaxArrayResult
  • Int32PowResult
  • Int32ToIntPtr
  • IsArrayResult
  • IsCallableResult
  • IsConstructorResult
  • IsCrossRealmArrayConstructorResult
  • IsObjectResult
  • IsPackedArrayResult
  • IsTypedArrayConstructorResult
  • IsTypedArrayResult
  • LoadArgumentDynamicSlot
  • LoadArgumentFixedSlot
  • LoadArrayBufferByteLengthDoubleResult
  • LoadArrayBufferByteLengthInt32Result
  • LoadArrayBufferViewLengthDoubleResult
  • LoadArrayBufferViewLengthInt32Result
  • LoadBooleanConstant
  • LoadBooleanResult
  • LoadConstantString
  • LoadDataViewValueResult
  • LoadDoubleResult
  • LoadFixedSlotResult
  • LoadFixedSlotTypedResult
  • LoadInstanceOfObjectResult
  • LoadInt32ArrayLength
  • LoadInt32Constant
  • LoadInt32Result
  • LoadObject
  • LoadProto
  • LoadStringCharCodeResult
  • LoadStringCharResult
  • LoadStringResult
  • LoadUndefined
  • LoadValueTag
  • LoadValueTruthyResult
  • MapGetBigIntResult
  • MapGetNonGCThingResult
  • MapGetObjectResult
  • MapGetResult
  • MapGetStringResult
  • MapGetSymbolResult
  • MapHasBigIntResult
  • MapHasNonGCThingResult
  • MapHasObjectResult
  • MapHasResult
  • MapHasStringResult
  • MapHasSymbolResult
  • MathAbsInt32Result
  • MathAbsNumberResult
  • MathAtan2NumberResult
  • MathCeilNumberResult
  • MathCeilToInt32Result
  • MathClz32Result
  • MathFRoundNumberResult
  • MathFloorNumberResult
  • MathFloorToInt32Result
  • MathFunctionNumberResult
  • MathHypot2NumberResult
  • MathHypot3NumberResult
  • MathHypot4NumberResult
  • MathImulResult
  • MathRandomResult
  • MathRoundToInt32Result
  • MathSignInt32Result
  • MathSignNumberResult
  • MathSignNumberToInt32Result
  • MathSqrtNumberResult
  • MathTruncNumberResult
  • MathTruncToInt32Result
  • NewArrayFromLengthResult
  • NewArrayIteratorResult
  • NewRegExpStringIteratorResult
  • NewStringIteratorResult
  • NewStringObjectResult
  • NewTypedArrayFromArrayBufferResult
  • NewTypedArrayFromArrayResult
  • NewTypedArrayFromLengthResult
  • NumberMinMax
  • NumberMinMaxArrayResult
  • ObjectCreateResult
  • ObjectToStringResult
  • PackedArrayPopResult
  • PackedArrayShiftResult
  • PackedArraySliceResult
  • ReflectGetPrototypeOfResult
  • RegExpInstanceOptimizableResult
  • RegExpPrototypeOptimizableResult
  • ReturnFromIC
  • SameValueResult
  • SetHasBigIntResult
  • SetHasNonGCThingResult
  • SetHasObjectResult
  • SetHasResult
  • SetHasStringResult
  • SetHasSymbolResult
  • StoreDataViewValueResult
  • StoreFixedSlotUndefinedResult
  • StringFromCharCodeResult
  • StringFromCodePointResult
  • StringReplaceStringResult
  • StringSplitStringResult
  • StringToLowerCaseResult
  • StringToUpperCaseResult
  • TruncateDoubleToUInt32
  • TypedArrayElementSizeResult

Cache kind: InstanceOf

  • GuardShape
  • GuardToObject
  • LoadInstanceOfObjectResult
  • LoadObject
  • LoadProto
  • ReturnFromIC

Cache kind: NewArray

  • GuardNoAllocationMetadataBuilder
  • NewArrayObjectResult
  • ReturnFromIC

Cache kind: NewObject

  • GuardNoAllocationMetadataBuilder
  • NewPlainObjectResult
  • ReturnFromIC

Cache kind: OptimizeSpreadCall

  • GuardArgumentsObjectFlags
  • GuardArrayIsPacked
  • GuardClass
  • GuardDynamicSlotIsSpecificObject
  • GuardShape
  • GuardToObject
  • LoadObject
  • LoadUndefined
  • ReturnFromIC

Cache kind: SetProp

  • CallAddOrUpdateSparseElementHelper
  • CallDOMSetter
  • CallNativeSetter
  • CallScriptedSetter
  • CallSetArrayLength
  • GuardClass
  • GuardDynamicSlotValue
  • GuardFixedSlotValue
  • GuardHasGetterSetter
  • GuardIndexGreaterThanDenseInitLength
  • GuardIndexIsValidUpdateOrAdd
  • GuardInt32IsNonNegative
  • GuardIsExtensible
  • GuardIsNotDOMProxy
  • GuardIsNull
  • GuardIsNumber
  • GuardIsProxy
  • GuardIsUndefined
  • GuardNonDoubleType
  • GuardNullProto
  • GuardNumberToIntPtrIndex
  • GuardProto
  • GuardShape
  • GuardSpecificAtom
  • GuardSpecificObject
  • GuardSpecificSymbol
  • GuardStringToIndex
  • GuardToBigInt
  • GuardToInt32
  • GuardToInt32Index
  • GuardToInt32ModUint32
  • GuardToObject
  • GuardToString
  • GuardToSymbol
  • GuardToUint8Clamped
  • Int32ToIntPtr
  • LoadDOMExpandoValue
  • LoadDOMExpandoValueGuardGeneration
  • LoadDOMExpandoValueIgnoreGeneration
  • LoadObject
  • LoadProto
  • LoadWrapperTarget
  • MegamorphicSetElement
  • MegamorphicStoreSlot
  • ProxySet
  • ReturnFromIC
  • StoreDenseElement
  • StoreDynamicSlot
  • StoreFixedSlot
  • StoreTypedArrayElement

Cache kind: ToBool

  • GuardIsNullOrUndefined
  • GuardIsNumber
  • GuardNonDoubleType
  • GuardToBigInt
  • GuardToObject
  • GuardToString
  • LoadBigIntTruthyResult
  • LoadBooleanResult
  • LoadDoubleTruthyResult
  • LoadInt32TruthyResult
  • LoadObjectTruthyResult
  • LoadOperandResult
  • LoadStringTruthyResult
  • ReturnFromIC

Cache kind: ToPropertyKey

  • GuardToInt32
  • GuardToInt32Index
  • GuardToString
  • GuardToSymbol
  • LoadInt32Result
  • LoadStringResult
  • LoadSymbolResult
  • ReturnFromIC

Cache kind: TypeOf

  • GuardIsNumber
  • GuardNonDoubleType
  • GuardToObject
  • LoadConstantString
  • LoadTypeOfObjectResult
  • ReturnFromIC

Cache kind: UnaryArith

  • BigIntDecResult
  • BigIntIncResult
  • BigIntNegationResult
  • BigIntNotResult
  • BooleanToNumber
  • DoubleDecResult
  • DoubleIncResult
  • DoubleNegationResult
  • GuardBooleanToInt32
  • GuardIsNull
  • GuardIsNullOrUndefined
  • GuardIsNumber
  • GuardIsUndefined
  • GuardStringToInt32
  • GuardStringToNumber
  • GuardToBigInt
  • GuardToBoolean
  • GuardToInt32
  • GuardToString
  • Int32DecResult
  • Int32IncResult
  • Int32NegationResult
  • Int32NotResult
  • LoadBigIntResult
  • LoadDoubleResult
  • LoadInt32Constant
  • LoadInt32Result
  • ReturnFromIC
  • TruncateDoubleToUInt32
Clone this wiki locally