Revision: 16331
Author:   [email protected]
Date:     Mon Aug 26 14:56:23 2013 UTC
Log:      Fix test-log/EquivalenceOfLoggingAndTraversal

The test has been marked as intermittently failing since 2011 and since that "code-creation" event signature has changed a bit. I updated the parser in the test but that revealed another issue: "code-creation" events with type 'Script' didn't match functions with type 'LazyCompile' retrieved during the heap traversal because the later had name " :1:1" which didn't match the script's name.

BUG=v8:2857
[email protected]

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

Modified:
 /branches/bleeding_edge/test/cctest/cctest.status
 /branches/bleeding_edge/test/cctest/log-eq-of-logging-and-traversal.js

=======================================
--- /branches/bleeding_edge/test/cctest/cctest.status Fri Aug 23 13:16:10 2013 UTC +++ /branches/bleeding_edge/test/cctest/cctest.status Mon Aug 26 14:56:23 2013 UTC
@@ -42,9 +42,6 @@
# This test always fails. It tests that LiveEdit causes abort when turned off.
 test-debug/LiveEditDisabled: FAIL

-# Bug(2857)
-test-log/EquivalenceOfLoggingAndTraversal: SKIP
-
 # We do not yet shrink weak maps after they have been emptied by the GC
 test-weakmaps/Shrinking: FAIL
 test-weaksets/WeakSet_Shrinking: FAIL
=======================================
--- /branches/bleeding_edge/test/cctest/log-eq-of-logging-and-traversal.js Wed Sep 14 11:47:03 2011 UTC +++ /branches/bleeding_edge/test/cctest/log-eq-of-logging-and-traversal.js Mon Aug 26 14:56:23 2013 UTC
@@ -39,7 +39,7 @@
 function LogProcessor() {
   LogReader.call(this, {
       'code-creation': {
-          parsers: [null, parseInt, parseInt, null, 'var-args'],
+          parsers: [null, parseInt, parseInt, parseInt, null, 'var-args'],
           processor: this.processCodeCreation },
       'code-move': { parsers: [parseInt, parseInt],
           processor: this.processCodeMove },
@@ -55,8 +55,12 @@
 LogProcessor.prototype.__proto__ = LogReader.prototype;

 LogProcessor.prototype.processCodeCreation = function(
-    type, start, size, name, maybe_func) {
+    type, kind, start, size, name, maybe_func) {
if (type != "LazyCompile" && type != "Script" && type != "Function") return; + // Scripts will compile into anonymous functions starting at 1:1. Adjust the + // name here so that it matches corrsponding function's name during the heap
+  // traversal.
+  if (type == "Script") name = " :1:1";
   // Discard types to avoid discrepancies in "LazyCompile" vs. "Function".
   type = "";
   if (maybe_func.length) {

--
--
v8-dev mailing list
[email protected]
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 [email protected].
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to