Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(677)

Unified Diff: cc/trees/layer_tree_host_impl_unittest.cc

Issue 448303002: Use custom ListContainer to allocate DrawQuads (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@perftest
Patch Set: fix win trybot compile error Created 6 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: cc/trees/layer_tree_host_impl_unittest.cc
diff --git a/cc/trees/layer_tree_host_impl_unittest.cc b/cc/trees/layer_tree_host_impl_unittest.cc
index 9e63fad82d87448da4d85c965d6da37f423cab13..09a136ddced2c4b991b8a4036f8648d4a5d6ad3d 100644
--- a/cc/trees/layer_tree_host_impl_unittest.cc
+++ b/cc/trees/layer_tree_host_impl_unittest.cc
@@ -4026,9 +4026,10 @@ class LayerTreeHostImplViewportCoveredTest : public LayerTreeHostImplTest {
protected:
size_t CountGutterQuads(const QuadList& quad_list) {
size_t num_gutter_quads = 0;
- for (size_t i = 0; i < quad_list.size(); ++i) {
- num_gutter_quads += (quad_list[i]->material ==
- gutter_quad_material_) ? 1 : 0;
+ for (QuadList::ConstIterator iter = quad_list.begin();
+ iter != quad_list.end();
+ ++iter) {
+ num_gutter_quads += (iter->material == gutter_quad_material_) ? 1 : 0;
}
return num_gutter_quads;
}
@@ -4040,10 +4041,12 @@ class LayerTreeHostImplViewportCoveredTest : public LayerTreeHostImplTest {
// Make sure that the texture coordinates match their expectations.
void ValidateTextureDrawQuads(const QuadList& quad_list) {
- for (size_t i = 0; i < quad_list.size(); ++i) {
- if (quad_list[i]->material != DrawQuad::TEXTURE_CONTENT)
+ for (QuadList::ConstIterator iter = quad_list.begin();
+ iter != quad_list.end();
+ ++iter) {
+ if (iter->material != DrawQuad::TEXTURE_CONTENT)
continue;
- const TextureDrawQuad* quad = TextureDrawQuad::MaterialCast(quad_list[i]);
+ const TextureDrawQuad* quad = TextureDrawQuad::MaterialCast(&*iter);
gfx::SizeF gutter_texture_size_pixels = gfx::ScaleSize(
gutter_texture_size_, host_impl_->device_scale_factor());
EXPECT_EQ(quad->uv_top_left.x(),
@@ -4642,9 +4645,9 @@ TEST_F(LayerTreeHostImplTest, ContributingLayerEmptyScissorPartialSwap) {
ASSERT_EQ(1U, frame.render_passes[0]->quad_list.size());
ASSERT_EQ(1U, frame.render_passes[1]->quad_list.size());
EXPECT_EQ(DrawQuad::SOLID_COLOR,
- frame.render_passes[0]->quad_list[0]->material);
+ frame.render_passes[0]->quad_list.front()->material);
EXPECT_EQ(DrawQuad::RENDER_PASS,
- frame.render_passes[1]->quad_list[0]->material);
+ frame.render_passes[1]->quad_list.front()->material);
my_host_impl->DrawLayers(&frame, gfx::FrameTime::Now());
my_host_impl->DidDrawAllLayers(frame);
@@ -4669,9 +4672,9 @@ TEST_F(LayerTreeHostImplTest, ContributingLayerEmptyScissorNoPartialSwap) {
ASSERT_EQ(1U, frame.render_passes[0]->quad_list.size());
ASSERT_EQ(1U, frame.render_passes[1]->quad_list.size());
EXPECT_EQ(DrawQuad::SOLID_COLOR,
- frame.render_passes[0]->quad_list[0]->material);
+ frame.render_passes[0]->quad_list.front()->material);
EXPECT_EQ(DrawQuad::RENDER_PASS,
- frame.render_passes[1]->quad_list[0]->material);
+ frame.render_passes[1]->quad_list.front()->material);
my_host_impl->DrawLayers(&frame, gfx::FrameTime::Now());
my_host_impl->DidDrawAllLayers(frame);
@@ -4844,12 +4847,13 @@ class LayerTreeHostImplTestWithDelegatingRenderer
LayerImpl* child = host_impl_->active_tree()->root_layer()->children()[0];
gfx::RectF expected_child_visible_rect(child->content_bounds());
EXPECT_RECT_EQ(expected_child_visible_rect,
- root_render_pass->quad_list[0]->visible_rect);
+ root_render_pass->quad_list.front()->visible_rect);
LayerImpl* root = host_impl_->active_tree()->root_layer();
gfx::RectF expected_root_visible_rect(root->content_bounds());
- EXPECT_RECT_EQ(expected_root_visible_rect,
- root_render_pass->quad_list[1]->visible_rect);
+ QuadList::ConstIterator iter = root_render_pass->quad_list.begin();
+ ++iter;
+ EXPECT_RECT_EQ(expected_root_visible_rect, iter->visible_rect);
}
host_impl_->DrawLayers(&frame, gfx::FrameTime::Now());
@@ -4983,9 +4987,10 @@ TEST_F(LayerTreeHostImplTest, MaskLayerWithScaling) {
ASSERT_EQ(1u, frame.render_passes.size());
ASSERT_EQ(1u, frame.render_passes[0]->quad_list.size());
ASSERT_EQ(DrawQuad::RENDER_PASS,
- frame.render_passes[0]->quad_list[0]->material);
+ frame.render_passes[0]->quad_list.front()->material);
const RenderPassDrawQuad* render_pass_quad =
- RenderPassDrawQuad::MaterialCast(frame.render_passes[0]->quad_list[0]);
+ RenderPassDrawQuad::MaterialCast(
+ frame.render_passes[0]->quad_list.front());
EXPECT_EQ(gfx::Rect(0, 0, 100, 100).ToString(),
render_pass_quad->rect.ToString());
EXPECT_EQ(gfx::RectF(0.f, 0.f, 1.f, 1.f).ToString(),
@@ -5011,9 +5016,10 @@ TEST_F(LayerTreeHostImplTest, MaskLayerWithScaling) {
ASSERT_EQ(1u, frame.render_passes.size());
ASSERT_EQ(1u, frame.render_passes[0]->quad_list.size());
ASSERT_EQ(DrawQuad::RENDER_PASS,
- frame.render_passes[0]->quad_list[0]->material);
+ frame.render_passes[0]->quad_list.front()->material);
const RenderPassDrawQuad* render_pass_quad =
- RenderPassDrawQuad::MaterialCast(frame.render_passes[0]->quad_list[0]);
+ RenderPassDrawQuad::MaterialCast(
+ frame.render_passes[0]->quad_list.front());
EXPECT_EQ(gfx::Rect(0, 0, 200, 200).ToString(),
render_pass_quad->rect.ToString());
EXPECT_EQ(gfx::RectF(0.f, 0.f, 1.f, 1.f).ToString(),
@@ -5041,9 +5047,10 @@ TEST_F(LayerTreeHostImplTest, MaskLayerWithScaling) {
ASSERT_EQ(1u, frame.render_passes.size());
ASSERT_EQ(1u, frame.render_passes[0]->quad_list.size());
ASSERT_EQ(DrawQuad::RENDER_PASS,
- frame.render_passes[0]->quad_list[0]->material);
+ frame.render_passes[0]->quad_list.front()->material);
const RenderPassDrawQuad* render_pass_quad =
- RenderPassDrawQuad::MaterialCast(frame.render_passes[0]->quad_list[0]);
+ RenderPassDrawQuad::MaterialCast(
+ frame.render_passes[0]->quad_list.front());
EXPECT_EQ(gfx::Rect(0, 0, 200, 200).ToString(),
render_pass_quad->rect.ToString());
EXPECT_EQ(gfx::RectF(0.f, 0.f, 1.f, 1.f).ToString(),
@@ -5101,9 +5108,10 @@ TEST_F(LayerTreeHostImplTest, MaskLayerWithDifferentBounds) {
ASSERT_EQ(1u, frame.render_passes.size());
ASSERT_EQ(1u, frame.render_passes[0]->quad_list.size());
ASSERT_EQ(DrawQuad::RENDER_PASS,
- frame.render_passes[0]->quad_list[0]->material);
+ frame.render_passes[0]->quad_list.front()->material);
const RenderPassDrawQuad* render_pass_quad =
- RenderPassDrawQuad::MaterialCast(frame.render_passes[0]->quad_list[0]);
+ RenderPassDrawQuad::MaterialCast(
+ frame.render_passes[0]->quad_list.front());
EXPECT_EQ(gfx::Rect(0, 0, 50, 50).ToString(),
render_pass_quad->rect.ToString());
EXPECT_EQ(gfx::RectF(0.f, 0.f, 1.f, 1.f).ToString(),
@@ -5128,9 +5136,10 @@ TEST_F(LayerTreeHostImplTest, MaskLayerWithDifferentBounds) {
ASSERT_EQ(1u, frame.render_passes.size());
ASSERT_EQ(1u, frame.render_passes[0]->quad_list.size());
ASSERT_EQ(DrawQuad::RENDER_PASS,
- frame.render_passes[0]->quad_list[0]->material);
+ frame.render_passes[0]->quad_list.front()->material);
const RenderPassDrawQuad* render_pass_quad =
- RenderPassDrawQuad::MaterialCast(frame.render_passes[0]->quad_list[0]);
+ RenderPassDrawQuad::MaterialCast(
+ frame.render_passes[0]->quad_list.front());
EXPECT_EQ(gfx::Rect(0, 0, 100, 100).ToString(),
render_pass_quad->rect.ToString());
EXPECT_EQ(gfx::RectF(0.f, 0.f, 1.f, 1.f).ToString(),
@@ -5158,9 +5167,10 @@ TEST_F(LayerTreeHostImplTest, MaskLayerWithDifferentBounds) {
ASSERT_EQ(1u, frame.render_passes.size());
ASSERT_EQ(1u, frame.render_passes[0]->quad_list.size());
ASSERT_EQ(DrawQuad::RENDER_PASS,
- frame.render_passes[0]->quad_list[0]->material);
+ frame.render_passes[0]->quad_list.front()->material);
const RenderPassDrawQuad* render_pass_quad =
- RenderPassDrawQuad::MaterialCast(frame.render_passes[0]->quad_list[0]);
+ RenderPassDrawQuad::MaterialCast(
+ frame.render_passes[0]->quad_list.front());
EXPECT_EQ(gfx::Rect(0, 0, 100, 100).ToString(),
render_pass_quad->rect.ToString());
EXPECT_EQ(gfx::RectF(0.f, 0.f, 1.f, 1.f).ToString(),
@@ -5183,9 +5193,10 @@ TEST_F(LayerTreeHostImplTest, MaskLayerWithDifferentBounds) {
ASSERT_EQ(1u, frame.render_passes.size());
ASSERT_EQ(1u, frame.render_passes[0]->quad_list.size());
ASSERT_EQ(DrawQuad::RENDER_PASS,
- frame.render_passes[0]->quad_list[0]->material);
+ frame.render_passes[0]->quad_list.front()->material);
const RenderPassDrawQuad* render_pass_quad =
- RenderPassDrawQuad::MaterialCast(frame.render_passes[0]->quad_list[0]);
+ RenderPassDrawQuad::MaterialCast(
+ frame.render_passes[0]->quad_list.front());
EXPECT_EQ(gfx::Rect(0, 0, 100, 100).ToString(),
render_pass_quad->rect.ToString());
EXPECT_EQ(gfx::RectF(0.f, 0.f, 1.f, 1.f).ToString(),
@@ -5247,10 +5258,11 @@ TEST_F(LayerTreeHostImplTest, ReflectionMaskLayerWithDifferentBounds) {
ASSERT_EQ(1u, frame.render_passes.size());
ASSERT_EQ(2u, frame.render_passes[0]->quad_list.size());
- ASSERT_EQ(DrawQuad::RENDER_PASS,
- frame.render_passes[0]->quad_list[1]->material);
+ QuadList::ConstIterator iter = frame.render_passes[0]->quad_list.begin();
+ ++iter;
+ ASSERT_EQ(DrawQuad::RENDER_PASS, iter->material);
const RenderPassDrawQuad* replica_quad =
- RenderPassDrawQuad::MaterialCast(frame.render_passes[0]->quad_list[1]);
+ RenderPassDrawQuad::MaterialCast(&*iter);
EXPECT_EQ(gfx::Rect(0, 0, 50, 50).ToString(),
replica_quad->rect.ToString());
EXPECT_EQ(gfx::RectF(0.f, 0.f, 1.f, 1.f).ToString(),
@@ -5274,10 +5286,11 @@ TEST_F(LayerTreeHostImplTest, ReflectionMaskLayerWithDifferentBounds) {
ASSERT_EQ(1u, frame.render_passes.size());
ASSERT_EQ(2u, frame.render_passes[0]->quad_list.size());
- ASSERT_EQ(DrawQuad::RENDER_PASS,
- frame.render_passes[0]->quad_list[1]->material);
+ QuadList::ConstIterator iter = frame.render_passes[0]->quad_list.begin();
+ ++iter;
+ ASSERT_EQ(DrawQuad::RENDER_PASS, iter->material);
const RenderPassDrawQuad* replica_quad =
- RenderPassDrawQuad::MaterialCast(frame.render_passes[0]->quad_list[1]);
+ RenderPassDrawQuad::MaterialCast(&*iter);
EXPECT_EQ(gfx::Rect(0, 0, 100, 100).ToString(),
replica_quad->rect.ToString());
EXPECT_EQ(gfx::RectF(0.f, 0.f, 1.f, 1.f).ToString(),
@@ -5304,10 +5317,11 @@ TEST_F(LayerTreeHostImplTest, ReflectionMaskLayerWithDifferentBounds) {
ASSERT_EQ(1u, frame.render_passes.size());
ASSERT_EQ(2u, frame.render_passes[0]->quad_list.size());
- ASSERT_EQ(DrawQuad::RENDER_PASS,
- frame.render_passes[0]->quad_list[1]->material);
+ QuadList::ConstIterator iter = frame.render_passes[0]->quad_list.begin();
+ ++iter;
+ ASSERT_EQ(DrawQuad::RENDER_PASS, iter->material);
const RenderPassDrawQuad* replica_quad =
- RenderPassDrawQuad::MaterialCast(frame.render_passes[0]->quad_list[1]);
+ RenderPassDrawQuad::MaterialCast(&*iter);
EXPECT_EQ(gfx::Rect(0, 0, 100, 100).ToString(),
replica_quad->rect.ToString());
EXPECT_EQ(gfx::RectF(0.f, 0.f, 1.f, 1.f).ToString(),
@@ -5329,10 +5343,11 @@ TEST_F(LayerTreeHostImplTest, ReflectionMaskLayerWithDifferentBounds) {
ASSERT_EQ(1u, frame.render_passes.size());
ASSERT_EQ(2u, frame.render_passes[0]->quad_list.size());
- ASSERT_EQ(DrawQuad::RENDER_PASS,
- frame.render_passes[0]->quad_list[1]->material);
+ QuadList::ConstIterator iter = frame.render_passes[0]->quad_list.begin();
+ ++iter;
+ ASSERT_EQ(DrawQuad::RENDER_PASS, iter->material);
const RenderPassDrawQuad* replica_quad =
- RenderPassDrawQuad::MaterialCast(frame.render_passes[0]->quad_list[1]);
+ RenderPassDrawQuad::MaterialCast(&*iter);
EXPECT_EQ(gfx::Rect(0, 0, 100, 100).ToString(),
replica_quad->rect.ToString());
EXPECT_EQ(gfx::RectF(0.f, 0.f, 1.f, 1.f).ToString(),
@@ -5407,17 +5422,19 @@ TEST_F(LayerTreeHostImplTest, ReflectionMaskLayerForSurfaceWithUnclippedChild) {
// The surface is 100x50.
ASSERT_EQ(DrawQuad::RENDER_PASS,
- frame.render_passes[0]->quad_list[0]->material);
+ frame.render_passes[0]->quad_list.front()->material);
const RenderPassDrawQuad* render_pass_quad =
- RenderPassDrawQuad::MaterialCast(frame.render_passes[0]->quad_list[0]);
+ RenderPassDrawQuad::MaterialCast(
+ frame.render_passes[0]->quad_list.front());
EXPECT_EQ(gfx::Rect(0, 0, 100, 50).ToString(),
render_pass_quad->rect.ToString());
// The mask covers the owning layer only.
- ASSERT_EQ(DrawQuad::RENDER_PASS,
- frame.render_passes[0]->quad_list[1]->material);
+ QuadList::ConstIterator iter = frame.render_passes[0]->quad_list.begin();
+ ++iter;
+ ASSERT_EQ(DrawQuad::RENDER_PASS, iter->material);
const RenderPassDrawQuad* replica_quad =
- RenderPassDrawQuad::MaterialCast(frame.render_passes[0]->quad_list[1]);
+ RenderPassDrawQuad::MaterialCast(&*iter);
EXPECT_EQ(gfx::Rect(0, 0, 100, 50).ToString(),
replica_quad->rect.ToString());
EXPECT_EQ(gfx::RectF(0.f, 0.f, 2.f, 1.f).ToString(),
@@ -5439,17 +5456,19 @@ TEST_F(LayerTreeHostImplTest, ReflectionMaskLayerForSurfaceWithUnclippedChild) {
// The surface is 100x50 with its origin at (-50, 0).
ASSERT_EQ(DrawQuad::RENDER_PASS,
- frame.render_passes[0]->quad_list[0]->material);
+ frame.render_passes[0]->quad_list.front()->material);
const RenderPassDrawQuad* render_pass_quad =
- RenderPassDrawQuad::MaterialCast(frame.render_passes[0]->quad_list[0]);
+ RenderPassDrawQuad::MaterialCast(
+ frame.render_passes[0]->quad_list.front());
EXPECT_EQ(gfx::Rect(-50, 0, 100, 50).ToString(),
render_pass_quad->rect.ToString());
// The mask covers the owning layer only.
- ASSERT_EQ(DrawQuad::RENDER_PASS,
- frame.render_passes[0]->quad_list[1]->material);
+ QuadList::ConstIterator iter = frame.render_passes[0]->quad_list.begin();
+ ++iter;
+ ASSERT_EQ(DrawQuad::RENDER_PASS, iter->material);
const RenderPassDrawQuad* replica_quad =
- RenderPassDrawQuad::MaterialCast(frame.render_passes[0]->quad_list[1]);
+ RenderPassDrawQuad::MaterialCast(&*iter);
EXPECT_EQ(gfx::Rect(-50, 0, 100, 50).ToString(),
replica_quad->rect.ToString());
EXPECT_EQ(gfx::RectF(-1.f, 0.f, 2.f, 1.f).ToString(),
@@ -5531,9 +5550,10 @@ TEST_F(LayerTreeHostImplTest, MaskLayerForSurfaceWithClippedLayer) {
// The surface is clipped to 10x20.
ASSERT_EQ(DrawQuad::RENDER_PASS,
- frame.render_passes[0]->quad_list[0]->material);
+ frame.render_passes[0]->quad_list.front()->material);
const RenderPassDrawQuad* render_pass_quad =
- RenderPassDrawQuad::MaterialCast(frame.render_passes[0]->quad_list[0]);
+ RenderPassDrawQuad::MaterialCast(
+ frame.render_passes[0]->quad_list.front());
EXPECT_EQ(gfx::Rect(20, 10, 10, 20).ToString(),
render_pass_quad->rect.ToString());
@@ -5608,7 +5628,7 @@ TEST_F(LayerTreeHostImplTest, FarAwayQuadsDontNeedAA) {
ASSERT_EQ(1u, frame.render_passes.size());
ASSERT_LE(1u, frame.render_passes[0]->quad_list.size());
- const DrawQuad* quad = frame.render_passes[0]->quad_list[0];
+ const DrawQuad* quad = frame.render_passes[0]->quad_list.front();
float edge[24];
gfx::QuadF device_layer_quad;

Powered by Google App Engine
This is Rietveld 408576698