} )();
}
+
+
+
var kNPoints = 8000;
var kNModifications = 20;
var kNVisiblePoints = 200;
var dyingPoints = void 0;
var scene = void 0;
var renderingStartTime = void 0;
+var omitFrameDueToVisibilityChange = false;
var scene = void 0;
var pausePlot = void 0;
var splayTree = void 0;
+handleVisibilityChange();
+
+function handleVisibilityChange() {
+ console.log("visibility change");
+ omitFrameDueToVisibilityChange = true;
+ document.addEventListener("webkitvisibilitychange", handleVisibilityChange);
+ document.addEventListener("msvisibilitychange", handleVisibilityChange);
+ document.addEventListener("mozvisibilitychange", handleVisibilityChange);
+ document.addEventListener("visibilitychange", handleVisibilityChange);
+}
+
function Point(x, y, z, payload) {
this.x = x;
scene.draw();
var renderingEndTime = Date.now();
- var pause = renderingEndTime - renderingStartTime;
- pausePlot.addPause(pause);
+ if (!omitFrameDueToVisibilityChange) {
+ var pause = renderingEndTime - renderingStartTime;
+ pausePlot.addPause(pause);
+ }
renderingStartTime = renderingEndTime;
+ omitFrameDueToVisibilityChange = false;
pausePlot.draw();
#ifdef V8_INTERPRETED_REGEXP
__ TailCallRuntime(Runtime::kRegExpExec, 4, 1);
#else // V8_INTERPRETED_REGEXP
- if (!FLAG_regexp_entry_native) {
- __ TailCallRuntime(Runtime::kRegExpExec, 4, 1);
- return;
- }
// Stack frame on entry.
// sp[0]: last_match_info (expected JSArray)
DEFINE_bool(canonicalize_object_literal_maps, true,
"Canonicalize maps for object literals.")
-DEFINE_bool(use_big_map_space, true,
- "Use big map space, but don't compact if it grew too big.")
-
DEFINE_int(max_map_space_pages, MapSpace::kMaxMapPageIndex - 1,
"Maximum number of pages in map space which still allows to encode "
"forwarding pointers. That's actually a constant, but it's useful "
// Regexp
DEFINE_bool(regexp_optimization, true, "generate optimized regexp code")
-DEFINE_bool(regexp_entry_native, true, "use native code to enter regexp")
// Testing flags test/cctest/test-{flags,api,serialization}.cc
DEFINE_bool(testing_bool_flag, true, "testing_bool_flag")
DEFINE_bool(trace_isolates, false, "trace isolate state changes")
-DEFINE_bool(trace_live_byte_count, false,
- "trace updates to page live byte count")
-
// VM state
DEFINE_bool(log_state_changes, false, "Log state changes.")
#ifdef V8_INTERPRETED_REGEXP
__ TailCallRuntime(Runtime::kRegExpExec, 4, 1);
#else // V8_INTERPRETED_REGEXP
- if (!FLAG_regexp_entry_native) {
- __ TailCallRuntime(Runtime::kRegExpExec, 4, 1);
- return;
- }
// Stack frame on entry.
// esp[0]: return address
#ifdef V8_INTERPRETED_REGEXP
__ TailCallRuntime(Runtime::kRegExpExec, 4, 1);
#else // V8_INTERPRETED_REGEXP
- if (!FLAG_regexp_entry_native) {
- __ TailCallRuntime(Runtime::kRegExpExec, 4, 1);
- return;
- }
// Stack frame on entry.
// sp[0]: last_match_info (expected JSArray)
// Manage live byte count (count of bytes known to be live,
// because they are marked black).
void ResetLiveBytes() {
- if (FLAG_trace_live_byte_count) {
+ if (FLAG_gc_verbose) {
PrintF("ResetLiveBytes:%p:%x->0\n",
static_cast<void*>(this), live_byte_count_);
}
}
void IncrementLiveBytes(int by) {
ASSERT_LE(static_cast<unsigned>(live_byte_count_), size_);
- if (FLAG_trace_live_byte_count) {
+ if (FLAG_gc_verbose) {
printf("UpdateLiveBytes:%p:%x%c=%x->%x\n",
static_cast<void*>(this), live_byte_count_,
((by < 0) ? '-' : '+'), ((by < 0) ? -by : by),
#ifdef V8_INTERPRETED_REGEXP
__ TailCallRuntime(Runtime::kRegExpExec, 4, 1);
#else // V8_INTERPRETED_REGEXP
- if (!FLAG_regexp_entry_native) {
- __ TailCallRuntime(Runtime::kRegExpExec, 4, 1);
- return;
- }
// Stack frame on entry.
// rsp[0]: return address