Revision: 21198
Author:   a...@chromium.org
Date:     Thu May  8 09:47:17 2014 UTC
Log:      DevTools: Unflake test-cpu-profiler/JsNativeJsRuntimeJsSample

BUG=v8:3308
LOG=N
R=bmeu...@chromium.org, joc...@chromium.org, yu...@chromium.org

Review URL: https://codereview.chromium.org/271683002
http://code.google.com/p/v8/source/detail?r=21198

Modified:
 /branches/bleeding_edge/src/profile-generator.cc
 /branches/bleeding_edge/test/cctest/cctest.status
 /branches/bleeding_edge/test/cctest/test-cpu-profiler.cc

=======================================
--- /branches/bleeding_edge/src/profile-generator.cc Tue Apr 29 06:42:26 2014 UTC +++ /branches/bleeding_edge/src/profile-generator.cc Thu May 8 09:47:17 2014 UTC
@@ -208,9 +208,9 @@


 void ProfileNode::Print(int indent) {
-  OS::Print("%5u %*c %s%s %d #%d %s",
+  OS::Print("%5u %*s %s%s %d #%d %s",
             self_ticks_,
-            indent, ' ',
+            indent, "",
             entry_->name_prefix(),
             entry_->name(),
             entry_->script_id(),
=======================================
--- /branches/bleeding_edge/test/cctest/cctest.status Wed May 7 16:13:04 2014 UTC +++ /branches/bleeding_edge/test/cctest/cctest.status Thu May 8 09:47:17 2014 UTC
@@ -73,8 +73,6 @@
   'test-cpu-profiler/CollectCpuProfile': [PASS, FLAKY],
   # BUG(3287).
   'test-cpu-profiler/SampleWhenFrameIsNotSetup': [PASS, FLAKY],
-  # BUG(3308).
-  'test-cpu-profiler/JsNativeJsRuntimeJsSample': [PASS, FLAKY],

############################################################################
   # Slow tests.
=======================================
--- /branches/bleeding_edge/test/cctest/test-cpu-profiler.cc Fri Apr 25 18:53:06 2014 UTC +++ /branches/bleeding_edge/test/cctest/test-cpu-profiler.cc Thu May 8 09:47:17 2014 UTC
@@ -1158,9 +1158,12 @@
     const v8::CpuProfileNode* testNode =
         FindChild(env->GetIsolate(), startNode, "test");
     if (testNode) {
-      ScopedVector<v8::Handle<v8::String> > names(2);
+      ScopedVector<v8::Handle<v8::String> > names(3);
       names[0] = v8::String::NewFromUtf8(env->GetIsolate(), "bar");
       names[1] = v8::String::NewFromUtf8(env->GetIsolate(), "apply");
+      // apply calls "get length" before invoking the function itself
+      // and we may get hit into it.
+      names[2] = v8::String::NewFromUtf8(env->GetIsolate(), "get length");
       CheckChildrenNames(testNode, names);
     }

@@ -1343,7 +1346,11 @@
   const v8::CpuProfileNode* barNode =
       GetChild(env->GetIsolate(), nativeFunctionNode, "bar");

-  CHECK_EQ(1, barNode->GetChildrenCount());
+  // The child is in fact a bound foo.
+  // A bound function has a wrapper that may make calls to
+  // other functions e.g. "get length".
+  CHECK_LE(1, barNode->GetChildrenCount());
+  CHECK_GE(2, barNode->GetChildrenCount());
   GetChild(env->GetIsolate(), barNode, "foo");

   profile->Delete();

--
--
v8-dev mailing list
v8-dev@googlegroups.com
http://groups.google.com/group/v8-dev
--- You received this message because you are subscribed to the Google Groups "v8-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to v8-dev+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to