| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
| |
BUG=155413
TEST=cc_unittests
R=enne@chromium.org,jamesr@chromium.org
TBR=jamesr@chromium.org
Review URL: https://chromiumcodereview.appspot.com/11228059
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@163749 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
BUG=155413
TEST=cc_unittests
R=enne@chromium.org,jamesr@chromium.org
TBR=jamesr@chromium.org
Review URL: https://chromiumcodereview.appspot.com/11225040
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@163479 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
Fixed reland of https://chromiumcodereview.appspot.com/11189043/
TBR=jam@chromium.org,jamesr@chromium.org
BUG=155413
Review URL: https://codereview.chromium.org/11231054
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@163429 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Replace the single value with a ManagedMemoryPolicy structure
which has the limit in bytes when visible and when not visible,
and also has a priority cutoff when visible and when not visible.
In CCRendererClient, separate the methods for specifying and
enforcing a memory policy. This is so that one may decrease the
consumption of a renderer that has grown over time, without
disallowing growth in the future.
BUG=134750
Review URL: https://chromiumcodereview.appspot.com/11196038
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@163420 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
BUG=155413
TEST=cc_unittests
R=enne@chromium.org,jamesr@chromium.org
TBR=jamesr@chromium.org
Review URL: https://codereview.chromium.org/11225022
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@163196 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
| |
This reverts commit 184fac5add06d5f4670fa6be4a4d3b39232d51bb.
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@163059 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
BUG=155413
Review URL: https://codereview.chromium.org/11189043
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@163052 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Exception: Missing input files:
c:\b\build\slave\cr-win-rel\build\src\cc\CCTextureUpdateQueue.h
Relanding with this file removed as well.
BUG=155413
TEST=cc_unittests
TBR=enne@chromium.org
Review URL: https://chromiumcodereview.appspot.com/11227005
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@163028 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
| |
Build fails with "gclient hooks failed" error.
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@162988 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
BUG=155413
TEST=cc_unittests
R=enne@chromium.org
Review URL: https://chromiumcodereview.appspot.com/11189076
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@162986 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This reduces the number of texture uploader classes from 4 to 1.
- TextureUploader
- ThrottledTextureUploader
- UnthrottledTextureUploader
- LayerTextureSubImage
becomes
- TextureUploader
and it lives behind the CCResourceProvider interface where
the LayerTextureSubImage instance used to be.
This also makes the call stack when performing a texture upload less
awkward. It used to look like this:
CCTextureUpdateController::updateMoreTexturesNow() ->
ThrottledTextureUploader::updateTexture() ->
CCPrioritizedTexture::upload() ->
CCResourceProvider::upload() ->
LayerTextureSubImage::upload() ->
glTexSubImage2D()
but now looks like this:
CCTextureUpdateController::updateMoreTexturesNow() ->
CCPrioritizedTexture::upload() ->
CCResourceProvider::upload() ->
TextureUploader::upload() ->
glTexSubImage2D()
which makes a lot more sense considering that
CCTextureUpdateController::updateMoreTexturesNow() should really be called
CCResourceUpdateController::updateMoreResourcesNow() and
CCPrioritizedTexture::upload() should be CCPrioritizedResource::update().
This is only refactoring and should not change the behavior of the
compositor in any way.
BUG=
TEST=cc_unittests
Review URL: https://chromiumcodereview.appspot.com/11188055
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@162951 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We can't compile-guard code and use DCHECK since it can be enabled at runtime. So we guard the DCHECKs that we want to rely on conditionally-compiled code in !NDEBUG compile guards.
This also replaces use of LOG_ERROR("Foo") with LOG(ERROR)<<"Foo";
This was previously discussed and committed as https://codereview.chromium.org/11048044/
using a guard based on LOGGING_IS_OFFICIAL_BUILD, however this was not sufficient since there are build configurations that are official builds but have dchecks compiled.
R=enne
Review URL: https://codereview.chromium.org/11192030
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@162739 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
This incidentally cleans up time source and layer sorter.
R=jamesr@chromium.org
BUG=154451
Review URL: https://codereview.chromium.org/11188011
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@162731 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We can just use base/debug/trace_event.h directly. Unfortunately, this produces
several more LOG macro collisions between wtf/Assertions.h and base/logging.h. I
added a config.h stub to cc/stubs/ to undef LOG for all files in cc and removed
the few other overrides we had in place.
BUG=154451
Review URL: https://chromiumcodereview.appspot.com/11187035
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@162692 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
This change makes tabs drop their backbuffers and memory usage immediately upon receiving a visibility change notification, instead of going indirectly through the GPU memory manager.
In the future there will be a separate bytes-and-priority limit for both visible and non-visible states (as opposed to the current bytes-only limit for when you're visible and 0 otherwise). The priority limit allow, say, drop everything but visible content.
BUG=134750
Review URL: https://chromiumcodereview.appspot.com/11078017
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@162507 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
We actually don't need the O(1) lookup for backings, so just use a list.
BUG=154451
Review URL: https://chromiumcodereview.appspot.com/11195015
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@162335 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
This reverts commit 162296. (https://chromiumcodereview.appspot.com/11048044)
TBR=danakj@chromium.org
Review URL: https://codereview.chromium.org/11196014
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@162297 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We can't compile-guard code and use DCHECK since it can be enabled at runtime.
This removes all compile-time guards, and makes use of DCHECK instead of ASSERT. We use DCHECK_IS_ON() to early out and avoid extra work just for DCHECK where possible as well.
This also replaces use of LOG_ERROR("Foo") with LOG(ERROR)<<"Foo";
R=enne,jamesr
Review URL: https://chromiumcodereview.appspot.com/11048044
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@162296 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
BUG=155413
TEST=cc_unittests
R=enne@chromium.org,jamesr@chromium.org
Review URL: https://codereview.chromium.org/11145033
TBR=tfarina@chromium.org
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@162286 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
BUG=155413
TEST=cc_unittests
R=enne@chromium.org,jamesr@chromium.org
Review URL: https://codereview.chromium.org/11145033
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@162284 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
R=jamesr@chromium.org
BUG=154451
Review URL: https://chromiumcodereview.appspot.com/11154028
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@162077 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
recycled or evicted by the main thread.
Explicitly push priorities to their backings when a commit begins, and then update the presence of backings' resources in the impl tree when the trees are synchronized.
Note that in the worst case we can momentarily overshoot the texture budget by a factor of two because we keep around both the currently-drawing and the next frame.
Make the CCProxy implementations call the PTM directly instead of maintaining a bunch of wrapper functions in CCLayerTreeHost.
Make reduceMemory (called when synchronizing trees at the end of a commit) be the one true place where backings structures are deleted (they are just evicted in all other places).
Also, we can cut the PTM into a CCPrioritizedTextureManager and CCPrioritizedBackingManager where the former is a main-thread structure and the latter is an impl-thread structure. This change make the PTM follow parts of the commit flow, which will be more explicit with the separate structures.
BUG=152496
Review URL: https://chromiumcodereview.appspot.com/11079007
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@161949 0039d316-1c4b-4281-b951-d872f2087c98
|
|
BUG=155413
Review URL: https://codereview.chromium.org/11122003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@161671 0039d316-1c4b-4281-b951-d872f2087c98
|