Title: [196650] trunk/Source/_javascript_Core
Revision
196650
Author
[email protected]
Date
2016-02-16 12:50:46 -0800 (Tue, 16 Feb 2016)

Log Message

stress/sampling-profiler-deep-stack.js fails on ARM 32bit
https://bugs.webkit.org/show_bug.cgi?id=154255
<rdar://problem/24662996>

Reviewed by Mark Lam.

The bug here wasn't in the implementation of the sampling profiler 
itself. Rather, it was a bug in the test. JSC wasn't spending a lot
of time in a function that the test assumed a lot of time was spent in.
That's because the DFG was doing a good job at optimizing the function
at the leaf of the recursion. Because of that, we often wouldn't sample it.
I fixed this by making the leaf function do more work.

* tests/stress/sampling-profiler-deep-stack.js:
(platformSupportsSamplingProfiler.foo):

Modified Paths

Diff

Modified: trunk/Source/_javascript_Core/ChangeLog (196649 => 196650)


--- trunk/Source/_javascript_Core/ChangeLog	2016-02-16 20:35:47 UTC (rev 196649)
+++ trunk/Source/_javascript_Core/ChangeLog	2016-02-16 20:50:46 UTC (rev 196650)
@@ -1,3 +1,21 @@
+2016-02-16  Saam barati  <[email protected]>
+
+        stress/sampling-profiler-deep-stack.js fails on ARM 32bit
+        https://bugs.webkit.org/show_bug.cgi?id=154255
+        <rdar://problem/24662996>
+
+        Reviewed by Mark Lam.
+
+        The bug here wasn't in the implementation of the sampling profiler 
+        itself. Rather, it was a bug in the test. JSC wasn't spending a lot
+        of time in a function that the test assumed a lot of time was spent in.
+        That's because the DFG was doing a good job at optimizing the function
+        at the leaf of the recursion. Because of that, we often wouldn't sample it.
+        I fixed this by making the leaf function do more work.
+
+        * tests/stress/sampling-profiler-deep-stack.js:
+        (platformSupportsSamplingProfiler.foo):
+
 2016-02-16  Chris Dumez  <[email protected]>
 
         [Web IDL] Operations should be on the instance for global objects or if [Unforgeable]

Modified: trunk/Source/_javascript_Core/tests/stress/sampling-profiler-deep-stack.js (196649 => 196650)


--- trunk/Source/_javascript_Core/tests/stress/sampling-profiler-deep-stack.js	2016-02-16 20:35:47 UTC (rev 196649)
+++ trunk/Source/_javascript_Core/tests/stress/sampling-profiler-deep-stack.js	2016-02-16 20:50:46 UTC (rev 196650)
@@ -2,9 +2,11 @@
     load("./sampling-profiler/samplingProfiler.js");
 
     function foo(x) { 
+        let o = {};
         for (let i = 0; i < 1000; i++) {
             let x = i;
             x--;
+            o["x" + x] = x;
         }
         return x; 
     }
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to