Lines Matching defs:globals
489 // Returns the shared globals
497 // Returns the TLS globals (if set), or the shared globals
505 SkGlyphCache_Globals& globals = getGlobals();
506 SkAutoMutexAcquire ac(globals.fMutex);
509 globals.validate();
511 for (cache = globals.fHead; cache != NULL; cache = cache->fNext) {
517 globals.validate();
531 SkGlyphCache_Globals& globals = getGlobals();
532 SkAutoMutexAcquire ac(globals.fMutex);
536 globals.validate();
539 SkGlyphCache** hash = globals.fHash;
543 cache->detach(&globals.fHead);
548 for (cache = globals.fHead; cache != NULL; cache = cache->fNext) {
550 cache->detach(&globals.fHead);
559 globals anymore
569 SkASSERT(globals.fTotalMemoryUsed >= cache->fMemoryUsed);
570 globals.fTotalMemoryUsed -= cache->fMemoryUsed;
577 cache->attachToHead(&globals.fHead);
593 SkGlyphCache_Globals& globals = getGlobals();
594 SkAutoMutexAcquire ac(globals.fMutex);
596 globals.validate();
601 size_t allocated = globals.fTotalMemoryUsed + cache->fMemoryUsed;
602 size_t budgeted = globals.getFontCacheLimit();
604 (void)InternalFreeCache(&globals, allocated - budgeted);
608 cache->attachToHead(&globals.fHead);
609 globals.fTotalMemoryUsed += cache->fMemoryUsed;
613 SkASSERT(globals.fHash[index] != cache);
614 globals.fHash[index] = cache;
617 globals.validate();
648 size_t SkGlyphCache::InternalFreeCache(SkGlyphCache_Globals* globals,
650 globals->validate();
656 size_t minToPurge = globals->fTotalMemoryUsed >> 2;
660 SkGlyphCache* cache = FindTail(globals->fHead);
667 if (cache == globals->fHash[index]) {
668 globals->fHash[index] = NULL;
672 cache->detach(&globals->fHead);
678 SkASSERT(bytesFreed <= globals->fTotalMemoryUsed);
679 globals->fTotalMemoryUsed -= bytesFreed;
680 globals->validate();