MCPcopy Index your code
hub / github.com/RustPython/RustPython / cache_entries

Method cache_entries

crates/compiler-core/src/bytecode/instruction.rs:701–819  ·  view source on GitHub ↗

Number of CACHE code units that follow this instruction. _PyOpcode_Caches

(self)

Source from the content-addressed store, hash-verified

699 /// Number of CACHE code units that follow this instruction.
700 /// _PyOpcode_Caches
701 pub const fn cache_entries(self) -> usize {
702 match self {
703 // LOAD_ATTR: 9 cache entries
704 Self::LoadAttr { .. }
705 | Self::LoadAttrClass
706 | Self::LoadAttrClassWithMetaclassCheck
707 | Self::LoadAttrGetattributeOverridden
708 | Self::LoadAttrInstanceValue
709 | Self::LoadAttrMethodLazyDict
710 | Self::LoadAttrMethodNoDict
711 | Self::LoadAttrMethodWithValues
712 | Self::LoadAttrModule
713 | Self::LoadAttrNondescriptorNoDict
714 | Self::LoadAttrNondescriptorWithValues
715 | Self::LoadAttrProperty
716 | Self::LoadAttrSlot
717 | Self::LoadAttrWithHint => 9,
718
719 // BINARY_OP: 5 cache entries
720 Self::BinaryOp { .. }
721 | Self::BinaryOpAddFloat
722 | Self::BinaryOpAddInt
723 | Self::BinaryOpAddUnicode
724 | Self::BinaryOpExtend
725 | Self::BinaryOpInplaceAddUnicode
726 | Self::BinaryOpMultiplyFloat
727 | Self::BinaryOpMultiplyInt
728 | Self::BinaryOpSubscrDict
729 | Self::BinaryOpSubscrGetitem
730 | Self::BinaryOpSubscrListInt
731 | Self::BinaryOpSubscrListSlice
732 | Self::BinaryOpSubscrStrInt
733 | Self::BinaryOpSubscrTupleInt
734 | Self::BinaryOpSubtractFloat
735 | Self::BinaryOpSubtractInt => 5,
736
737 // LOAD_GLOBAL / STORE_ATTR: 4 cache entries
738 Self::LoadGlobal { .. }
739 | Self::LoadGlobalBuiltin
740 | Self::LoadGlobalModule
741 | Self::StoreAttr { .. }
742 | Self::StoreAttrInstanceValue
743 | Self::StoreAttrSlot
744 | Self::StoreAttrWithHint => 4,
745
746 // CALL / CALL_KW / TO_BOOL: 3 cache entries
747 Self::Call { .. }
748 | Self::CallAllocAndEnterInit
749 | Self::CallBoundMethodExactArgs
750 | Self::CallBoundMethodGeneral
751 | Self::CallBuiltinClass
752 | Self::CallBuiltinFast
753 | Self::CallBuiltinFastWithKeywords
754 | Self::CallBuiltinO
755 | Self::CallIsinstance
756 | Self::CallLen
757 | Self::CallListAppend
758 | Self::CallMethodDescriptorFast

Callers 13

instruction_targetMethod · 0.80
runMethod · 0.80
execute_instructionMethod · 0.80
execute_instrumentedMethod · 0.80
specialize_callMethod · 0.80
instrument_codeFunction · 0.80
mark_stacksFunction · 0.80
co_branchesMethod · 0.80
finalize_codeMethod · 0.80
original_bytesMethod · 0.80

Calls 1

to_baseMethod · 0.45

Tested by

no test coverage detected