Index: cc/prioritized_texture_manager.cc |
diff --git a/cc/prioritized_texture_manager.cc b/cc/prioritized_texture_manager.cc |
index edd773b6c6ea6dcf8e66b862d15e36cc9b71be8a..a590ba10e4e2aee5d591a5b3489ae24b5a2b0573 100644 |
--- a/cc/prioritized_texture_manager.cc |
+++ b/cc/prioritized_texture_manager.cc |
@@ -33,16 +33,16 @@ CCPrioritizedTextureManager::~CCPrioritizedTextureManager() |
unregisterTexture(*m_textures.begin()); |
deleteUnlinkedEvictedBackings(); |
- ASSERT(m_evictedBackings.empty()); |
+ CC_DCHECK(m_evictedBackings.empty()); |
// Each remaining backing is a leaked opengl texture. There should be none. |
- ASSERT(m_backings.empty()); |
+ CC_DCHECK(m_backings.empty()); |
} |
void CCPrioritizedTextureManager::prioritizeTextures() |
{ |
TRACE_EVENT0("cc", "CCPrioritizedTextureManager::prioritizeTextures"); |
- ASSERT(CCProxy::isMainThread()); |
+ CC_DCHECK(CCProxy::isMainThread()); |
// Sorting textures in this function could be replaced by a slightly |
// modified O(n) quick-select to partition textures rather than |
@@ -95,14 +95,14 @@ void CCPrioritizedTextureManager::prioritizeTextures() |
} |
sortedTextures.clear(); |
- ASSERT(m_memoryAboveCutoffBytes <= m_memoryAvailableBytes); |
- ASSERT(memoryAboveCutoffBytes() <= maxMemoryLimitBytes()); |
+ CC_DCHECK(m_memoryAboveCutoffBytes <= m_memoryAvailableBytes); |
+ CC_DCHECK(memoryAboveCutoffBytes() <= maxMemoryLimitBytes()); |
} |
void CCPrioritizedTextureManager::pushTexturePrioritiesToBackings() |
{ |
TRACE_EVENT0("cc", "CCPrioritizedTextureManager::pushTexturePrioritiesToBackings"); |
- ASSERT(CCProxy::isImplThread() && CCProxy::isMainThreadBlocked()); |
+ CC_DCHECK(CCProxy::isImplThread() && CCProxy::isMainThreadBlocked()); |
assertInvariants(); |
for (BackingList::iterator it = m_backings.begin(); it != m_backings.end(); ++it) |
@@ -114,7 +114,7 @@ void CCPrioritizedTextureManager::pushTexturePrioritiesToBackings() |
void CCPrioritizedTextureManager::updateBackingsInDrawingImplTree() |
{ |
TRACE_EVENT0("cc", "CCPrioritizedTextureManager::updateBackingsInDrawingImplTree"); |
- ASSERT(CCProxy::isImplThread() && CCProxy::isMainThreadBlocked()); |
+ CC_DCHECK(CCProxy::isImplThread() && CCProxy::isMainThreadBlocked()); |
assertInvariants(); |
for (BackingList::iterator it = m_backings.begin(); it != m_backings.end(); ++it) { |
@@ -128,7 +128,7 @@ void CCPrioritizedTextureManager::updateBackingsInDrawingImplTree() |
void CCPrioritizedTextureManager::sortBackings() |
{ |
TRACE_EVENT0("cc", "CCPrioritizedTextureManager::sortBackings"); |
- ASSERT(CCProxy::isImplThread()); |
+ CC_DCHECK(CCProxy::isImplThread()); |
// Put backings in eviction/recycling order. |
m_backings.sort(compareBackings); |
@@ -137,7 +137,7 @@ void CCPrioritizedTextureManager::sortBackings() |
void CCPrioritizedTextureManager::clearPriorities() |
{ |
- ASSERT(CCProxy::isMainThread()); |
+ CC_DCHECK(CCProxy::isMainThread()); |
for (TextureSet::iterator it = m_textures.begin(); it != m_textures.end(); ++it) { |
// FIXME: We should remove this and just set all priorities to |
// CCPriorityCalculator::lowestPriority() once we have priorities |
@@ -149,7 +149,7 @@ void CCPrioritizedTextureManager::clearPriorities() |
bool CCPrioritizedTextureManager::requestLate(CCPrioritizedTexture* texture) |
{ |
- ASSERT(CCProxy::isMainThread()); |
+ CC_DCHECK(CCProxy::isMainThread()); |
// This is already above cutoff, so don't double count it's memory below. |
if (texture->isAbovePriorityCutoff()) |
@@ -169,9 +169,9 @@ bool CCPrioritizedTextureManager::requestLate(CCPrioritizedTexture* texture) |
void CCPrioritizedTextureManager::acquireBackingTextureIfNeeded(CCPrioritizedTexture* texture, CCResourceProvider* resourceProvider) |
{ |
- ASSERT(CCProxy::isImplThread() && CCProxy::isMainThreadBlocked()); |
- ASSERT(!texture->isSelfManaged()); |
- ASSERT(texture->isAbovePriorityCutoff()); |
+ CC_DCHECK(CCProxy::isImplThread() && CCProxy::isMainThreadBlocked()); |
+ CC_DCHECK(!texture->isSelfManaged()); |
+ CC_DCHECK(texture->isAbovePriorityCutoff()); |
if (texture->backing() || !texture->isAbovePriorityCutoff()) |
return; |
@@ -209,7 +209,7 @@ void CCPrioritizedTextureManager::acquireBackingTextureIfNeeded(CCPrioritizedTex |
void CCPrioritizedTextureManager::evictBackingsToReduceMemory(size_t limitBytes, EvictionPriorityPolicy evictionPolicy, CCResourceProvider* resourceProvider) |
{ |
- ASSERT(CCProxy::isImplThread()); |
+ CC_DCHECK(CCProxy::isImplThread()); |
if (memoryUseBytes() <= limitBytes) |
return; |
@@ -226,10 +226,10 @@ void CCPrioritizedTextureManager::evictBackingsToReduceMemory(size_t limitBytes, |
void CCPrioritizedTextureManager::reduceMemory(CCResourceProvider* resourceProvider) |
{ |
- ASSERT(CCProxy::isImplThread() && CCProxy::isMainThreadBlocked()); |
+ CC_DCHECK(CCProxy::isImplThread() && CCProxy::isMainThreadBlocked()); |
evictBackingsToReduceMemory(m_memoryAvailableBytes, RespectManagerPriorityCutoff, resourceProvider); |
- ASSERT(memoryUseBytes() <= maxMemoryLimitBytes()); |
+ CC_DCHECK(memoryUseBytes() <= maxMemoryLimitBytes()); |
// We currently collect backings from deleted textures for later recycling. |
// However, if we do that forever we will always use the max limit even if |
@@ -258,15 +258,15 @@ void CCPrioritizedTextureManager::reduceMemory(CCResourceProvider* resourceProvi |
void CCPrioritizedTextureManager::clearAllMemory(CCResourceProvider* resourceProvider) |
{ |
- ASSERT(CCProxy::isImplThread() && CCProxy::isMainThreadBlocked()); |
- ASSERT(resourceProvider); |
+ CC_DCHECK(CCProxy::isImplThread() && CCProxy::isMainThreadBlocked()); |
+ CC_DCHECK(resourceProvider); |
evictBackingsToReduceMemory(0, DoNotRespectManagerPriorityCutoff, resourceProvider); |
} |
void CCPrioritizedTextureManager::reduceMemoryOnImplThread(size_t limitBytes, CCResourceProvider* resourceProvider) |
{ |
- ASSERT(CCProxy::isImplThread()); |
- ASSERT(resourceProvider); |
+ CC_DCHECK(CCProxy::isImplThread()); |
+ CC_DCHECK(resourceProvider); |
// If we are in the process of uploading a new frame then the backings at the very end of |
// the list are not sorted by priority. Sort them before doing the eviction. |
if (m_backingsTailNotSorted) |
@@ -276,14 +276,14 @@ void CCPrioritizedTextureManager::reduceMemoryOnImplThread(size_t limitBytes, CC |
void CCPrioritizedTextureManager::getEvictedBackings(BackingList& evictedBackings) |
{ |
- ASSERT(CCProxy::isImplThread()); |
+ CC_DCHECK(CCProxy::isImplThread()); |
evictedBackings.clear(); |
evictedBackings.insert(evictedBackings.begin(), m_evictedBackings.begin(), m_evictedBackings.end()); |
} |
void CCPrioritizedTextureManager::unlinkEvictedBackings(const BackingList& evictedBackings) |
{ |
- ASSERT(CCProxy::isMainThread()); |
+ CC_DCHECK(CCProxy::isMainThread()); |
for (BackingList::const_iterator it = evictedBackings.begin(); it != evictedBackings.end(); ++it) { |
CCPrioritizedTexture::Backing* backing = (*it); |
if (backing->owner()) |
@@ -293,7 +293,7 @@ void CCPrioritizedTextureManager::unlinkEvictedBackings(const BackingList& evict |
void CCPrioritizedTextureManager::deleteUnlinkedEvictedBackings() |
{ |
- ASSERT(CCProxy::isMainThread() || (CCProxy::isImplThread() && CCProxy::isMainThreadBlocked())); |
+ CC_DCHECK(CCProxy::isMainThread() || (CCProxy::isImplThread() && CCProxy::isMainThreadBlocked())); |
BackingList newEvictedBackings; |
for (BackingList::const_iterator it = m_evictedBackings.begin(); it != m_evictedBackings.end(); ++it) { |
CCPrioritizedTexture::Backing* backing = (*it); |
@@ -316,11 +316,11 @@ bool CCPrioritizedTextureManager::linkedEvictedBackingsExist() const |
void CCPrioritizedTextureManager::registerTexture(CCPrioritizedTexture* texture) |
{ |
- ASSERT(CCProxy::isMainThread()); |
- ASSERT(texture); |
- ASSERT(!texture->textureManager()); |
- ASSERT(!texture->backing()); |
- ASSERT(!ContainsKey(m_textures, texture)); |
+ CC_DCHECK(CCProxy::isMainThread()); |
+ CC_DCHECK(texture); |
+ CC_DCHECK(!texture->textureManager()); |
+ CC_DCHECK(!texture->backing()); |
+ CC_DCHECK(!ContainsKey(m_textures, texture)); |
texture->setManagerInternal(this); |
m_textures.insert(texture); |
@@ -329,9 +329,9 @@ void CCPrioritizedTextureManager::registerTexture(CCPrioritizedTexture* texture) |
void CCPrioritizedTextureManager::unregisterTexture(CCPrioritizedTexture* texture) |
{ |
- ASSERT(CCProxy::isMainThread() || (CCProxy::isImplThread() && CCProxy::isMainThreadBlocked())); |
- ASSERT(texture); |
- ASSERT(ContainsKey(m_textures, texture)); |
+ CC_DCHECK(CCProxy::isMainThread() || (CCProxy::isImplThread() && CCProxy::isMainThreadBlocked())); |
+ CC_DCHECK(texture); |
+ CC_DCHECK(ContainsKey(m_textures, texture)); |
returnBackingTexture(texture); |
texture->setManagerInternal(0); |
@@ -341,15 +341,15 @@ void CCPrioritizedTextureManager::unregisterTexture(CCPrioritizedTexture* textur |
void CCPrioritizedTextureManager::returnBackingTexture(CCPrioritizedTexture* texture) |
{ |
- ASSERT(CCProxy::isMainThread() || (CCProxy::isImplThread() && CCProxy::isMainThreadBlocked())); |
+ CC_DCHECK(CCProxy::isMainThread() || (CCProxy::isImplThread() && CCProxy::isMainThreadBlocked())); |
if (texture->backing()) |
texture->unlink(); |
} |
CCPrioritizedTexture::Backing* CCPrioritizedTextureManager::createBacking(IntSize size, GC3Denum format, CCResourceProvider* resourceProvider) |
{ |
- ASSERT(CCProxy::isImplThread() && CCProxy::isMainThreadBlocked()); |
- ASSERT(resourceProvider); |
+ CC_DCHECK(CCProxy::isImplThread() && CCProxy::isMainThreadBlocked()); |
+ CC_DCHECK(resourceProvider); |
CCResourceProvider::ResourceId resourceId = resourceProvider->createResource(m_pool, size, format, CCResourceProvider::TextureUsageAny); |
CCPrioritizedTexture::Backing* backing = new CCPrioritizedTexture::Backing(resourceId, resourceProvider, size, format); |
m_memoryUseBytes += backing->bytes(); |
@@ -358,9 +358,9 @@ CCPrioritizedTexture::Backing* CCPrioritizedTextureManager::createBacking(IntSiz |
void CCPrioritizedTextureManager::evictFirstBackingResource(CCResourceProvider* resourceProvider) |
{ |
- ASSERT(CCProxy::isImplThread()); |
- ASSERT(resourceProvider); |
- ASSERT(!m_backings.empty()); |
+ CC_DCHECK(CCProxy::isImplThread()); |
+ CC_DCHECK(resourceProvider); |
+ CC_DCHECK(!m_backings.empty()); |
CCPrioritizedTexture::Backing* backing = m_backings.front(); |
// Note that we create a backing and its resource at the same time, but we |
@@ -375,8 +375,8 @@ void CCPrioritizedTextureManager::evictFirstBackingResource(CCResourceProvider* |
void CCPrioritizedTextureManager::assertInvariants() |
{ |
-#if !ASSERT_DISABLED |
- ASSERT(CCProxy::isImplThread() && CCProxy::isMainThreadBlocked()); |
+#if CC_DCHECK_ENABLED() |
+ CC_DCHECK(CCProxy::isImplThread() && CCProxy::isMainThreadBlocked()); |
// If we hit any of these asserts, there is a bug in this class. To see |
// where the bug is, call this function at the beginning and end of |
@@ -385,8 +385,8 @@ void CCPrioritizedTextureManager::assertInvariants() |
// Backings/textures must be doubly-linked and only to other backings/textures in this manager. |
for (BackingList::iterator it = m_backings.begin(); it != m_backings.end(); ++it) { |
if ((*it)->owner()) { |
- ASSERT(ContainsKey(m_textures, (*it)->owner())); |
- ASSERT((*it)->owner()->backing() == (*it)); |
+ CC_DCHECK(ContainsKey(m_textures, (*it)->owner())); |
+ CC_DCHECK((*it)->owner()->backing() == (*it)); |
} |
} |
for (TextureSet::iterator it = m_textures.begin(); it != m_textures.end(); ++it) { |
@@ -394,13 +394,13 @@ void CCPrioritizedTextureManager::assertInvariants() |
CCPrioritizedTexture::Backing* backing = texture->backing(); |
if (backing) { |
if (backing->resourceHasBeenDeleted()) { |
- ASSERT(std::find(m_backings.begin(), m_backings.end(), backing) == m_backings.end()); |
- ASSERT(std::find(m_evictedBackings.begin(), m_evictedBackings.end(), backing) != m_evictedBackings.end()); |
+ CC_DCHECK(std::find(m_backings.begin(), m_backings.end(), backing) == m_backings.end()); |
+ CC_DCHECK(std::find(m_evictedBackings.begin(), m_evictedBackings.end(), backing) != m_evictedBackings.end()); |
} else { |
- ASSERT(std::find(m_backings.begin(), m_backings.end(), backing) != m_backings.end()); |
- ASSERT(std::find(m_evictedBackings.begin(), m_evictedBackings.end(), backing) == m_evictedBackings.end()); |
+ CC_DCHECK(std::find(m_backings.begin(), m_backings.end(), backing) != m_backings.end()); |
+ CC_DCHECK(std::find(m_evictedBackings.begin(), m_evictedBackings.end(), backing) == m_evictedBackings.end()); |
} |
- ASSERT(backing->owner() == texture); |
+ CC_DCHECK(backing->owner() == texture); |
} |
} |
@@ -412,13 +412,13 @@ void CCPrioritizedTextureManager::assertInvariants() |
for (BackingList::iterator it = m_backings.begin(); it != m_backings.end(); ++it) { |
CCPrioritizedTexture::Backing* backing = *it; |
if (previous_backing && (!m_backingsTailNotSorted || !backing->wasAbovePriorityCutoffAtLastPriorityUpdate())) |
- ASSERT(compareBackings(previous_backing, backing)); |
+ CC_DCHECK(compareBackings(previous_backing, backing)); |
if (!backing->canBeRecycled()) |
reachedUnrecyclable = true; |
if (reachedUnrecyclable) |
- ASSERT(!backing->canBeRecycled()); |
+ CC_DCHECK(!backing->canBeRecycled()); |
else |
- ASSERT(backing->canBeRecycled()); |
+ CC_DCHECK(backing->canBeRecycled()); |
previous_backing = backing; |
} |
#endif |