mirror of
https://github.com/servo/servo.git
synced 2025-08-09 23:45:35 +01:00
Add some timing info, update rust-azure to fix crash
This commit is contained in:
parent
4303419865
commit
b1c59aba61
2 changed files with 74 additions and 71 deletions
|
@ -1 +1 @@
|
||||||
Subproject commit 385867116d04f5d4aa34976bf9794bcb1913f162
|
Subproject commit 55457bba7f6a07728518a7a8f33b140bc72a51d7
|
|
@ -1,6 +1,7 @@
|
||||||
use gfx::display_list::DisplayList;
|
use gfx::display_list::DisplayList;
|
||||||
use gfx::compositor::{LayerBuffer, LayerBufferSet};
|
use gfx::compositor::{LayerBuffer, LayerBufferSet};
|
||||||
use opts::Opts;
|
use opts::Opts;
|
||||||
|
use util::time;
|
||||||
|
|
||||||
use azure::AzFloat;
|
use azure::AzFloat;
|
||||||
use azure::azure_hl::{B8G8R8A8, DrawTarget};
|
use azure::azure_hl::{B8G8R8A8, DrawTarget};
|
||||||
|
@ -38,6 +39,7 @@ pub fn render_layers(layer_ref: *RenderLayer,
|
||||||
let new_buffer_ports = dvec::DVec();
|
let new_buffer_ports = dvec::DVec();
|
||||||
|
|
||||||
// Divide up the layer into tiles.
|
// Divide up the layer into tiles.
|
||||||
|
do time::time("rendering: preparing buffers") {
|
||||||
let layer: &RenderLayer = unsafe { cast::transmute(layer_ref) };
|
let layer: &RenderLayer = unsafe { cast::transmute(layer_ref) };
|
||||||
let mut y = 0;
|
let mut y = 0;
|
||||||
while y < layer.size.height {
|
while y < layer.size.height {
|
||||||
|
@ -112,7 +114,6 @@ pub fn render_layers(layer_ref: *RenderLayer,
|
||||||
let (new_buffer_chan, new_buffer_port) = pipes::stream();
|
let (new_buffer_chan, new_buffer_port) = pipes::stream();
|
||||||
|
|
||||||
// Send the buffer to the child.
|
// Send the buffer to the child.
|
||||||
// FIXME: Don't copy the RenderLayer.
|
|
||||||
f(layer_ref, move buffer, move new_buffer_chan);
|
f(layer_ref, move buffer, move new_buffer_chan);
|
||||||
|
|
||||||
// Enqueue the port.
|
// Enqueue the port.
|
||||||
|
@ -122,12 +123,14 @@ pub fn render_layers(layer_ref: *RenderLayer,
|
||||||
}
|
}
|
||||||
y += TILE_SIZE;
|
y += TILE_SIZE;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
debug!("servo::gfx::render_layers: waiting on ports...");
|
|
||||||
let new_buffers = dvec::DVec();
|
let new_buffers = dvec::DVec();
|
||||||
|
do time::time("rendering: waiting on subtasks") {
|
||||||
for new_buffer_ports.each |new_buffer_port| {
|
for new_buffer_ports.each |new_buffer_port| {
|
||||||
new_buffers.push(new_buffer_port.recv());
|
new_buffers.push(new_buffer_port.recv());
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
return LayerBufferSet { buffers: move dvec::unwrap(move new_buffers) };
|
return LayerBufferSet { buffers: move dvec::unwrap(move new_buffers) };
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue