| Index: cc/tile_manager.cc | 
| diff --git a/cc/tile_manager.cc b/cc/tile_manager.cc | 
| index de7bf0d816e7929e8f8d49279bb82148879d829a..dd1cb6ad9fd3c9b273e4aa10939e3b9674c1239b 100644 | 
| --- a/cc/tile_manager.cc | 
| +++ b/cc/tile_manager.cc | 
| @@ -118,14 +118,17 @@ ManagedTileState::~ManagedTileState() { | 
| TileManager::TileManager( | 
| TileManagerClient* client, | 
| ResourceProvider* resource_provider, | 
| -    size_t num_raster_threads) | 
| +    size_t num_raster_threads, | 
| +    bool record_rendering_stats) | 
| : client_(client), | 
| resource_pool_(ResourcePool::Create(resource_provider)), | 
| -      raster_worker_pool_(RasterWorkerPool::Create(num_raster_threads)), | 
| +      raster_worker_pool_(RasterWorkerPool::Create( | 
| +          num_raster_threads, record_rendering_stats)), | 
| manage_tiles_pending_(false), | 
| manage_tiles_call_count_(0), | 
| bytes_pending_set_pixels_(0), | 
| -      ever_exceeded_memory_budget_(false) { | 
| +      ever_exceeded_memory_budget_(false), | 
| +      record_rendering_stats_(record_rendering_stats) { | 
| bool worker_pool_is_running = raster_worker_pool_->Start(); | 
| CHECK(worker_pool_is_running); | 
|  | 
| @@ -405,6 +408,7 @@ scoped_ptr<base::Value> TileManager::GetMemoryRequirementsAsValue() const { | 
| } | 
|  | 
| void TileManager::GetRenderingStats(RenderingStats* stats) { | 
| +  DCHECK(record_rendering_stats_); | 
| raster_worker_pool_->GetRenderingStats(stats); | 
| stats->totalDeferredImageCacheHitCount = | 
| rendering_stats_.totalDeferredImageCacheHitCount; | 
| @@ -569,15 +573,19 @@ void TileManager::GatherPixelRefsForTile(Tile* tile) { | 
| TRACE_EVENT0("cc", "TileManager::GatherPixelRefsForTile"); | 
| ManagedTileState& managed_state = tile->managed_state(); | 
| if (managed_state.need_to_gather_pixel_refs) { | 
| -    base::TimeTicks gather_begin_time = base::TimeTicks::Now(); | 
| +    base::TimeTicks gather_begin_time; | 
| +    if (record_rendering_stats_) | 
| +      gather_begin_time = base::TimeTicks::Now(); | 
| tile->picture_pile()->GatherPixelRefs( | 
| tile->content_rect_, | 
| tile->contents_scale_, | 
| managed_state.pending_pixel_refs); | 
| -    rendering_stats_.totalImageGatheringCount++; | 
| -    rendering_stats_.totalImageGatheringTime += | 
| -        base::TimeTicks::Now() - gather_begin_time; | 
| managed_state.need_to_gather_pixel_refs = false; | 
| +    if (record_rendering_stats_) { | 
| +      rendering_stats_.totalImageGatheringCount++; | 
| +      rendering_stats_.totalImageGatheringTime += | 
| +          base::TimeTicks::Now() - gather_begin_time; | 
| +    } | 
| } | 
| } | 
|  | 
|  |