PHP Class Zephir\Cache\StaticMethodCache

Calls in Zephir implement monomorphic and polymorphic caches to improve performance. Method/Functions lookups are cached in a standard first-level method lookup cache. The concept of inline caching is based on the empirical observation that the objects that occur at a particular call site are often of the same type Internal functions are considered monomorphic since they do not change across execution. Final and private methods are also monomorphic because of their own nature. Due to the Ahead-Of-Time compilation approach provided by Zephir, is not possible to implement inline caches, however is possible to add barriers/guards to take advantage of profile guided optimizations (PGO) and branch prediction. This implementation is based on the work of Hölzle, Chambers and Ungar [1]. [1] http://www.cs.ucsb.edu/~urs/oocsb/papers/ecoop91.pdf
Afficher le fichier Open project: phalcon/zephir

Protected Properties

Свойство Type Description
$cache

Méthodes publiques

Méthode Description
get ( Zephir\CompilationContext $compilationContext, ClassMethod | ReflectionMethod $method, boolean $allowNtsCache = true ) : string MethodCache

Method Details

get() public méthode

MethodCache
public get ( Zephir\CompilationContext $compilationContext, ClassMethod | ReflectionMethod $method, boolean $allowNtsCache = true ) : string
$compilationContext Zephir\CompilationContext
$method Zephir\ClassMethod | ReflectionMethod
$allowNtsCache boolean
Résultat string

Property Details

$cache protected_oe property

protected $cache