Title: [201237] trunk
Revision
201237
Author
[email protected]
Date
2016-05-20 19:00:42 -0700 (Fri, 20 May 2016)

Log Message

Remove LegacyProfiler
https://bugs.webkit.org/show_bug.cgi?id=153565

Patch by Joseph Pecoraro <[email protected]> on 2016-05-20
Reviewed by Saam Barati.

.:

* ManualTests/inspector/profiler-test-call.html: Removed.
* ManualTests/inspector/profiler-test-many-calls-in-the-same-scope.html: Removed.

Source/_javascript_Core:

* inspector/protocol/Timeline.json:
* jsc.cpp:
* runtime/JSGlobalObject.cpp:
(JSC::JSGlobalObject::hasLegacyProfiler):
* runtime/JSGlobalObject.h:
(JSC::JSGlobalObject::supportsLegacyProfiling): Deleted.

Source/WebCore:

_javascript_Core now provides a sampling profiler and it is enabled
by all ports. Web Inspector switched months ago to using the
sampling profiler and displaying its data. Remove the legacy
profiler, as it is no longer being used by anything other then
console.profile and tests. We will update console.profile's
behavior soon to have new behavior and use the sampling data.

* CMakeLists.txt:
* DerivedSources.cpp:
* DerivedSources.make:
* ForwardingHeaders/profiler/LegacyProfiler.h: Removed.
* WebCore.xcodeproj/project.pbxproj:
* bindings/js/JSCustomXPathNSResolver.cpp:
* bindings/js/JSDOMWindowBase.cpp:
(WebCore::JSDOMWindowBase::supportsLegacyProfiling): Deleted.
(WebCore::JSDOMWindowBase::supportsRichSourceInfo): Deleted.
* bindings/js/JSDOMWindowBase.h:
* bindings/js/JSWorkerGlobalScopeBase.cpp:
(WebCore::JSWorkerGlobalScopeBase::supportsLegacyProfiling): Deleted.
* bindings/js/JSWorkerGlobalScopeBase.h:
* bindings/js/ScriptCachedFrameData.cpp:
* bindings/js/ScriptController.cpp:
(WebCore::ScriptController::clearWindowShell): Deleted.
* bindings/js/ScriptProfile.h: Removed.
* bindings/js/ScriptProfileNode.h: Removed.
* bindings/scripts/CodeGeneratorJS.pm:
(AddClassForwardIfNeeded): Deleted.
* bindings/scripts/test/JS/JSTestObj.cpp:
(WebCore::jsTestObjPrototypeFunctionMethodWithSequenceArg): Deleted.
(WebCore::jsTestObjPrototypeFunctionMethodReturningSequence): Deleted.
* bindings/scripts/test/TestObj.idl:
* css/CSSParser.cpp:
* dom/Document.cpp:
* inspector/InspectorConsoleInstrumentation.h:
(WebCore::InspectorInstrumentation::stopProfiling):
* inspector/InspectorController.cpp:
(WebCore::InspectorController::InspectorController):
(WebCore::InspectorController::legacyProfilerEnabled): Deleted.
(WebCore::InspectorController::setLegacyProfilerEnabled): Deleted.
* inspector/InspectorController.h:
* inspector/InspectorInstrumentation.cpp:
(WebCore::InspectorInstrumentation::stopProfilingImpl):
* inspector/InspectorInstrumentation.h:
* inspector/InspectorTimelineAgent.cpp:
(WebCore::InspectorTimelineAgent::startFromConsole):
(WebCore::InspectorTimelineAgent::stopFromConsole):
* inspector/InspectorTimelineAgent.h:
* inspector/PageDebuggerAgent.cpp:
* inspector/PageRuntimeAgent.cpp:
* inspector/ScriptProfile.idl: Removed.
* inspector/ScriptProfileNode.idl: Removed.
* inspector/TimelineRecordFactory.cpp:
(WebCore::buildAggregateCallInfoInspectorObject): Deleted.
(WebCore::buildInspectorObject): Deleted.
(WebCore::buildProfileInspectorObject): Deleted.
(WebCore::TimelineRecordFactory::appendProfile): Deleted.
* inspector/TimelineRecordFactory.h:
* page/DOMWindow.cpp:
* page/Page.cpp:
* page/PageConsoleClient.cpp:
(WebCore::PageConsoleClient::profileEnd):
(WebCore::PageConsoleClient::clearProfiles): Deleted.
* page/PageConsoleClient.h:
* testing/Internals.cpp:
(WebCore::Internals::resetToConsistentState): Deleted.
(WebCore::Internals::consoleProfiles): Deleted.
(WebCore::Internals::setLegacyJavaScriptProfilingEnabled): Deleted.
* testing/Internals.h:
* testing/Internals.idl:

Source/WebKit/win:

* Interfaces/IWebInspector.idl:
* WebCoreStatistics.cpp:
* WebInspector.cpp:
(WebInspector::isJavaScriptProfilingEnabled): Deleted.
(WebInspector::setJavaScriptProfilingEnabled): Deleted.
* WebInspector.h:
* WebView.cpp:

LayoutTests:

* fast/profiler/anonymous-event-handler-expected.txt: Removed.
* fast/profiler/anonymous-event-handler.html: Removed.
* fast/profiler/anonymous-function-called-from-different-contexts-expected.txt: Removed.
* fast/profiler/anonymous-function-called-from-different-contexts.html: Removed.
* fast/profiler/anonymous-function-calls-built-in-functions-expected.txt: Removed.
* fast/profiler/anonymous-function-calls-built-in-functions.html: Removed.
* fast/profiler/anonymous-function-calls-eval-expected.txt: Removed.
* fast/profiler/anonymous-function-calls-eval.html: Removed.
* fast/profiler/anonymous-functions-with-display-names-expected.txt: Removed.
* fast/profiler/anonymous-functions-with-display-names.html: Removed.
* fast/profiler/apply-expected.txt: Removed.
* fast/profiler/apply.html: Removed.
* fast/profiler/built-in-function-calls-anonymous-expected.txt: Removed.
* fast/profiler/built-in-function-calls-anonymous.html: Removed.
* fast/profiler/built-in-function-calls-user-defined-function-expected.txt: Removed.
* fast/profiler/built-in-function-calls-user-defined-function.html: Removed.
* fast/profiler/call-expected.txt: Removed.
* fast/profiler/call-register-leak-expected.txt: Removed.
* fast/profiler/call-register-leak.html: Removed.
* fast/profiler/call.html: Removed.
* fast/profiler/calling-the-function-that-started-the-profiler-from-another-scope-expected.txt: Removed.
* fast/profiler/calling-the-function-that-started-the-profiler-from-another-scope.html: Removed.
* fast/profiler/compare-multiple-profiles-expected.txt: Removed.
* fast/profiler/compare-multiple-profiles.html: Removed.
* fast/profiler/constructor-expected.txt: Removed.
* fast/profiler/constructor.html: Removed.
* fast/profiler/dead-time-expected.txt: Removed.
* fast/profiler/dead-time.html: Removed.
* fast/profiler/document-dot-write-expected.txt: Removed.
* fast/profiler/document-dot-write.html: Removed.
* fast/profiler/event-handler-expected.txt: Removed.
* fast/profiler/event-handler.html: Removed.
* fast/profiler/execution-context-and-eval-on-same-line-expected.txt: Removed.
* fast/profiler/execution-context-and-eval-on-same-line.html: Removed.
* fast/profiler/inline-event-handler-expected.txt: Removed.
* fast/profiler/inline-event-handler.html: Removed.
* fast/profiler/many-calls-in-the-same-scope-expected.txt: Removed.
* fast/profiler/many-calls-in-the-same-scope.html: Removed.
* fast/profiler/multiple-and-different-scoped-anonymous-function-calls-expected.txt: Removed.
* fast/profiler/multiple-and-different-scoped-anonymous-function-calls.html: Removed.
* fast/profiler/multiple-and-different-scoped-function-calls-expected.txt: Removed.
* fast/profiler/multiple-and-different-scoped-function-calls.html: Removed.
* fast/profiler/multiple-anonymous-functions-called-from-the-same-function-expected.txt: Removed.
* fast/profiler/multiple-anonymous-functions-called-from-the-same-function.html: Removed.
* fast/profiler/multiple-frames-expected.txt: Removed.
* fast/profiler/multiple-frames.html: Removed.
* fast/profiler/named-functions-with-display-names-expected.txt: Removed.
* fast/profiler/named-functions-with-display-names.html: Removed.
* fast/profiler/nested-anonymous-functon-expected.txt: Removed.
* fast/profiler/nested-anonymous-functon.html: Removed.
* fast/profiler/nested-start-and-stop-profiler-expected.txt: Removed.
* fast/profiler/nested-start-and-stop-profiler.html: Removed.
* fast/profiler/no-execution-context-expected.txt: Removed.
* fast/profiler/no-execution-context.html: Removed.
* fast/profiler/one-execution-context-expected.txt: Removed.
* fast/profiler/one-execution-context.html: Removed.
* fast/profiler/profile-calls-in-included-file-expected.txt: Removed.
* fast/profiler/profile-calls-in-included-file.html: Removed.
* fast/profiler/profile-with-no-title-expected.txt: Removed.
* fast/profiler/profile-with-no-title.html: Removed.
* fast/profiler/profiling-from-a-nested-location-but-stop-profiling-outside-the-nesting-expected.txt: Removed.
* fast/profiler/profiling-from-a-nested-location-but-stop-profiling-outside-the-nesting.html: Removed.
* fast/profiler/profiling-from-a-nested-location-expected.txt: Removed.
* fast/profiler/profiling-from-a-nested-location.html: Removed.
* fast/profiler/resources/other-frame.html: Removed.
* fast/profiler/resources/other-window.html: Removed.
* fast/profiler/resources/profiler-test-JS-resources.js: Removed.
* fast/profiler/simple-event-call-expected.txt: Removed.
* fast/profiler/simple-event-call.html: Removed.
* fast/profiler/simple-no-level-change-expected.txt: Removed.
* fast/profiler/simple-no-level-change.html: Removed.
* fast/profiler/start-and-stop-profiler-multiple-times-expected.txt: Removed.
* fast/profiler/start-and-stop-profiler-multiple-times.html: Removed.
* fast/profiler/start-and-stop-profiling-in-the-same-function-expected.txt: Removed.
* fast/profiler/start-and-stop-profiling-in-the-same-function.html: Removed.
* fast/profiler/start-but-dont-stop-profiling-expected.txt: Removed.
* fast/profiler/start-but-dont-stop-profiling.html: Removed.
* fast/profiler/stop-profiling-after-setTimeout-expected.txt: Removed.
* fast/profiler/stop-profiling-after-setTimeout.html: Removed.
* fast/profiler/stop-then-function-call-expected.txt: Removed.
* fast/profiler/stop-then-function-call.html: Removed.
* fast/profiler/throw-exception-from-eval-expected.txt: Removed.
* fast/profiler/throw-exception-from-eval.html-disabled: Removed.
* fast/profiler/two-execution-contexts-expected.txt: Removed.
* fast/profiler/two-execution-contexts.html: Removed.
* fast/profiler/user-defined-function-calls-built-in-functions-expected.txt: Removed.
* fast/profiler/user-defined-function-calls-built-in-functions.html: Removed.
* fast/profiler/window-dot-eval-expected.txt: Removed.
* fast/profiler/window-dot-eval.html: Removed.
* platform/efl/TestExpectations:
* platform/gtk/TestExpectations:
* platform/ios-simulator/TestExpectations:

Modified Paths

Removed Paths

Diff

Modified: trunk/ChangeLog (201236 => 201237)


--- trunk/ChangeLog	2016-05-21 01:17:42 UTC (rev 201236)
+++ trunk/ChangeLog	2016-05-21 02:00:42 UTC (rev 201237)
@@ -1,3 +1,13 @@
+2016-05-20  Joseph Pecoraro  <[email protected]>
+
+        Remove LegacyProfiler
+        https://bugs.webkit.org/show_bug.cgi?id=153565
+
+        Reviewed by Saam Barati.
+
+        * ManualTests/inspector/profiler-test-call.html: Removed.
+        * ManualTests/inspector/profiler-test-many-calls-in-the-same-scope.html: Removed.
+
 2016-05-18  Gwang Yoon Hwang  <[email protected]>
 
         [GStreamer] Use FakeSink to get a decoded texture from a pipeline

Modified: trunk/LayoutTests/ChangeLog (201236 => 201237)


--- trunk/LayoutTests/ChangeLog	2016-05-21 01:17:42 UTC (rev 201236)
+++ trunk/LayoutTests/ChangeLog	2016-05-21 02:00:42 UTC (rev 201237)
@@ -1,3 +1,103 @@
+2016-05-20  Joseph Pecoraro  <[email protected]>
+
+        Remove LegacyProfiler
+        https://bugs.webkit.org/show_bug.cgi?id=153565
+
+        Reviewed by Saam Barati.
+
+        * fast/profiler/anonymous-event-handler-expected.txt: Removed.
+        * fast/profiler/anonymous-event-handler.html: Removed.
+        * fast/profiler/anonymous-function-called-from-different-contexts-expected.txt: Removed.
+        * fast/profiler/anonymous-function-called-from-different-contexts.html: Removed.
+        * fast/profiler/anonymous-function-calls-built-in-functions-expected.txt: Removed.
+        * fast/profiler/anonymous-function-calls-built-in-functions.html: Removed.
+        * fast/profiler/anonymous-function-calls-eval-expected.txt: Removed.
+        * fast/profiler/anonymous-function-calls-eval.html: Removed.
+        * fast/profiler/anonymous-functions-with-display-names-expected.txt: Removed.
+        * fast/profiler/anonymous-functions-with-display-names.html: Removed.
+        * fast/profiler/apply-expected.txt: Removed.
+        * fast/profiler/apply.html: Removed.
+        * fast/profiler/built-in-function-calls-anonymous-expected.txt: Removed.
+        * fast/profiler/built-in-function-calls-anonymous.html: Removed.
+        * fast/profiler/built-in-function-calls-user-defined-function-expected.txt: Removed.
+        * fast/profiler/built-in-function-calls-user-defined-function.html: Removed.
+        * fast/profiler/call-expected.txt: Removed.
+        * fast/profiler/call-register-leak-expected.txt: Removed.
+        * fast/profiler/call-register-leak.html: Removed.
+        * fast/profiler/call.html: Removed.
+        * fast/profiler/calling-the-function-that-started-the-profiler-from-another-scope-expected.txt: Removed.
+        * fast/profiler/calling-the-function-that-started-the-profiler-from-another-scope.html: Removed.
+        * fast/profiler/compare-multiple-profiles-expected.txt: Removed.
+        * fast/profiler/compare-multiple-profiles.html: Removed.
+        * fast/profiler/constructor-expected.txt: Removed.
+        * fast/profiler/constructor.html: Removed.
+        * fast/profiler/dead-time-expected.txt: Removed.
+        * fast/profiler/dead-time.html: Removed.
+        * fast/profiler/document-dot-write-expected.txt: Removed.
+        * fast/profiler/document-dot-write.html: Removed.
+        * fast/profiler/event-handler-expected.txt: Removed.
+        * fast/profiler/event-handler.html: Removed.
+        * fast/profiler/execution-context-and-eval-on-same-line-expected.txt: Removed.
+        * fast/profiler/execution-context-and-eval-on-same-line.html: Removed.
+        * fast/profiler/inline-event-handler-expected.txt: Removed.
+        * fast/profiler/inline-event-handler.html: Removed.
+        * fast/profiler/many-calls-in-the-same-scope-expected.txt: Removed.
+        * fast/profiler/many-calls-in-the-same-scope.html: Removed.
+        * fast/profiler/multiple-and-different-scoped-anonymous-function-calls-expected.txt: Removed.
+        * fast/profiler/multiple-and-different-scoped-anonymous-function-calls.html: Removed.
+        * fast/profiler/multiple-and-different-scoped-function-calls-expected.txt: Removed.
+        * fast/profiler/multiple-and-different-scoped-function-calls.html: Removed.
+        * fast/profiler/multiple-anonymous-functions-called-from-the-same-function-expected.txt: Removed.
+        * fast/profiler/multiple-anonymous-functions-called-from-the-same-function.html: Removed.
+        * fast/profiler/multiple-frames-expected.txt: Removed.
+        * fast/profiler/multiple-frames.html: Removed.
+        * fast/profiler/named-functions-with-display-names-expected.txt: Removed.
+        * fast/profiler/named-functions-with-display-names.html: Removed.
+        * fast/profiler/nested-anonymous-functon-expected.txt: Removed.
+        * fast/profiler/nested-anonymous-functon.html: Removed.
+        * fast/profiler/nested-start-and-stop-profiler-expected.txt: Removed.
+        * fast/profiler/nested-start-and-stop-profiler.html: Removed.
+        * fast/profiler/no-execution-context-expected.txt: Removed.
+        * fast/profiler/no-execution-context.html: Removed.
+        * fast/profiler/one-execution-context-expected.txt: Removed.
+        * fast/profiler/one-execution-context.html: Removed.
+        * fast/profiler/profile-calls-in-included-file-expected.txt: Removed.
+        * fast/profiler/profile-calls-in-included-file.html: Removed.
+        * fast/profiler/profile-with-no-title-expected.txt: Removed.
+        * fast/profiler/profile-with-no-title.html: Removed.
+        * fast/profiler/profiling-from-a-nested-location-but-stop-profiling-outside-the-nesting-expected.txt: Removed.
+        * fast/profiler/profiling-from-a-nested-location-but-stop-profiling-outside-the-nesting.html: Removed.
+        * fast/profiler/profiling-from-a-nested-location-expected.txt: Removed.
+        * fast/profiler/profiling-from-a-nested-location.html: Removed.
+        * fast/profiler/resources/other-frame.html: Removed.
+        * fast/profiler/resources/other-window.html: Removed.
+        * fast/profiler/resources/profiler-test-JS-resources.js: Removed.
+        * fast/profiler/simple-event-call-expected.txt: Removed.
+        * fast/profiler/simple-event-call.html: Removed.
+        * fast/profiler/simple-no-level-change-expected.txt: Removed.
+        * fast/profiler/simple-no-level-change.html: Removed.
+        * fast/profiler/start-and-stop-profiler-multiple-times-expected.txt: Removed.
+        * fast/profiler/start-and-stop-profiler-multiple-times.html: Removed.
+        * fast/profiler/start-and-stop-profiling-in-the-same-function-expected.txt: Removed.
+        * fast/profiler/start-and-stop-profiling-in-the-same-function.html: Removed.
+        * fast/profiler/start-but-dont-stop-profiling-expected.txt: Removed.
+        * fast/profiler/start-but-dont-stop-profiling.html: Removed.
+        * fast/profiler/stop-profiling-after-setTimeout-expected.txt: Removed.
+        * fast/profiler/stop-profiling-after-setTimeout.html: Removed.
+        * fast/profiler/stop-then-function-call-expected.txt: Removed.
+        * fast/profiler/stop-then-function-call.html: Removed.
+        * fast/profiler/throw-exception-from-eval-expected.txt: Removed.
+        * fast/profiler/throw-exception-from-eval.html-disabled: Removed.
+        * fast/profiler/two-execution-contexts-expected.txt: Removed.
+        * fast/profiler/two-execution-contexts.html: Removed.
+        * fast/profiler/user-defined-function-calls-built-in-functions-expected.txt: Removed.
+        * fast/profiler/user-defined-function-calls-built-in-functions.html: Removed.
+        * fast/profiler/window-dot-eval-expected.txt: Removed.
+        * fast/profiler/window-dot-eval.html: Removed.
+        * platform/efl/TestExpectations:
+        * platform/gtk/TestExpectations:
+        * platform/ios-simulator/TestExpectations:
+
 2016-05-20  Zalan Bujtas  <[email protected]>
 
         `width: 1%` on nested table cell causes its table to hog horizontal space

Modified: trunk/LayoutTests/platform/efl/TestExpectations (201236 => 201237)


--- trunk/LayoutTests/platform/efl/TestExpectations	2016-05-21 01:17:42 UTC (rev 201236)
+++ trunk/LayoutTests/platform/efl/TestExpectations	2016-05-21 02:00:42 UTC (rev 201237)
@@ -1021,9 +1021,6 @@
 webkit.org/b/142156 css3/shapes/spec-examples/shape-outside-012.html [ Failure Pass ]
 webkit.org/b/142156 css3/shapes/spec-examples/shape-outside-019.html [ Failure Pass ]
 
-webkit.org/b/142157 fast/profiler/dead-time.html [ Failure Pass ]
-webkit.org/b/142157 fast/profiler/stop-profiling-after-setTimeout.html [ Failure Pass ]
-
 webkit.org/b/95551 fast/forms/datalist/update-range-with-datalist.html [ ImageOnlyFailure Pass ]
 
 webkit.org/b/129820 svg/clip-path/mask-nested-clip-path-006.svg [ Pass ImageOnlyFailure ]

Modified: trunk/LayoutTests/platform/gtk/TestExpectations (201236 => 201237)


--- trunk/LayoutTests/platform/gtk/TestExpectations	2016-05-21 01:17:42 UTC (rev 201236)
+++ trunk/LayoutTests/platform/gtk/TestExpectations	2016-05-21 02:00:42 UTC (rev 201237)
@@ -1203,9 +1203,6 @@
 webkit.org/b/136066 animations/missing-values-first-keyframe.html [ Crash Pass ]
 webkit.org/b/136066 animations/state-at-end-event.html [ Crash Pass ]
 
-webkit.org/b/136067 fast/profiler/dead-time.html [ Failure Pass ]
-webkit.org/b/136067 fast/profiler/stop-profiling-after-setTimeout.html [ Failure Pass ]
-
 webkit.org/b/136070 fast/forms/label/label-becomes-visible-while-clicking-on-label.html [ Failure Pass ]
 
 webkit.org/b/136580 media/context-menu-actions.html [ Timeout Pass ]

Modified: trunk/LayoutTests/platform/ios-simulator/TestExpectations (201236 => 201237)


--- trunk/LayoutTests/platform/ios-simulator/TestExpectations	2016-05-21 01:17:42 UTC (rev 201236)
+++ trunk/LayoutTests/platform/ios-simulator/TestExpectations	2016-05-21 02:00:42 UTC (rev 201237)
@@ -1896,7 +1896,6 @@
 fast/preloader/document-write-2.html [ Failure ]
 fast/preloader/document-write.html [ Failure ]
 fast/preloader/image-srcset.html [ Failure ]
-fast/profiler/profiling-from-a-nested-location-but-stop-profiling-outside-the-nesting.html [ Failure ]
 fast/regions/absolute-in-relative-overflow.html [ ImageOnlyFailure ]
 fast/regions/absolute-pos-elem-in-region.html [ ImageOnlyFailure ]
 fast/regions/animation-element-in-region-flowed-to-other-thread.html [ ImageOnlyFailure ]

Deleted: trunk/ManualTests/inspector/profiler-test-call.html (201236 => 201237)


--- trunk/ManualTests/inspector/profiler-test-call.html	2016-05-21 01:17:42 UTC (rev 201236)
+++ trunk/ManualTests/inspector/profiler-test-call.html	2016-05-21 02:00:42 UTC (rev 201237)
@@ -1,35 +0,0 @@
-<html>
-<head>
-<script src=""
-<script>
-console.profile("Using the call() method");
-function startTest()
-{
-    var myObject = new fakeObject(1, 2);
-    endTest();
-}
-
-function fakeObject (x, y)
-{
-    this.x = x;
-    fakeInteriorFunction.call(this, y);
-}
-
-function fakeInteriorFunction(y)
-{
-    this.y = y;
-}
-
-</script>
-</head>
-
-<body _onload_="startTest()">
-This page's _javascript_ has a call to call() in it.
-<br>
-<br>
-To use this test, load it in the browser then load the WebInspector and look at
-the profile.  In the profile there should be a call to fakeObject() with call() as
-its child and a fakeInteriorFunction() as call()'s child.
-<div id="output"></div>
-</body>
-</html>

Deleted: trunk/ManualTests/inspector/profiler-test-many-calls-in-the-same-scope.html (201236 => 201237)


--- trunk/ManualTests/inspector/profiler-test-many-calls-in-the-same-scope.html	2016-05-21 01:17:42 UTC (rev 201236)
+++ trunk/ManualTests/inspector/profiler-test-many-calls-in-the-same-scope.html	2016-05-21 02:00:42 UTC (rev 201237)
@@ -1,42 +0,0 @@
-<html>
-<head>
-<script src=""
-<script>
-console.profile("Many Calls In The Same Scope");
-function startTest()
-{
-    insertNewText();
-    insertGivenText("This was a triumph.");
-    arrayOperatorFunction(7);
-    intermediaryFunction();
-    anonymousFunction();
-    end()
-    endT();
-    endT();
-    endTest();
-}
-
-function end()
-{
-    var x = 0;
-}
-
-function endT()
-{
-    var y = 1;
-}
-
-</script>
-</head>
-
-<body _onload_="startTest()">
-This page's _javascript_ has many function calls in the same scope.
-<br>
-<br>
-To use this test, load it in the browser then load the WebInspector and look at
-the profile.  In the profile many functions should be the children of startTest.
-Use the sorting capabilites to make sure the similarly named functions are sorted
-correctly.
-<div id="output"></div>
-</body>
-</html>
\ No newline at end of file

Modified: trunk/Source/_javascript_Core/ChangeLog (201236 => 201237)


--- trunk/Source/_javascript_Core/ChangeLog	2016-05-21 01:17:42 UTC (rev 201236)
+++ trunk/Source/_javascript_Core/ChangeLog	2016-05-21 02:00:42 UTC (rev 201237)
@@ -1,3 +1,17 @@
+2016-05-20  Joseph Pecoraro  <[email protected]>
+
+        Remove LegacyProfiler
+        https://bugs.webkit.org/show_bug.cgi?id=153565
+
+        Reviewed by Saam Barati.
+
+        * inspector/protocol/Timeline.json:
+        * jsc.cpp:
+        * runtime/JSGlobalObject.cpp:
+        (JSC::JSGlobalObject::hasLegacyProfiler):
+        * runtime/JSGlobalObject.h:
+        (JSC::JSGlobalObject::supportsLegacyProfiling): Deleted.
+
 2016-05-20  Saam barati  <[email protected]>
 
         JSScope::abstractAccess doesn't need to copy the SymbolTableEntry, it can use it by reference

Modified: trunk/Source/_javascript_Core/inspector/protocol/Timeline.json (201236 => 201237)


--- trunk/Source/_javascript_Core/inspector/protocol/Timeline.json	2016-05-21 01:17:42 UTC (rev 201236)
+++ trunk/Source/_javascript_Core/inspector/protocol/Timeline.json	2016-05-21 02:00:42 UTC (rev 201237)
@@ -51,40 +51,6 @@
                 { "name": "data", "type": "object", "description": "Event data." },
                 { "name": "children", "type": "array", "optional": true, "items": { "$ref": "TimelineEvent" }, "description": "Nested records." }
             ]
-        },
-        {
-            "id": "CPUProfileNodeAggregateCallInfo",
-            "type": "object",
-            "description": "Aggregate CPU Profile call info. Holds time information for all the calls that happened on a node.",
-            "properties": [
-                { "name": "callCount", "type": "number", "description": "Total number of calls." },
-                { "name": "startTime", "type": "number", "description": "Start time for the first call." },
-                { "name": "endTime", "type": "number", "description": "End time for the last call." },
-                { "name": "totalTime", "type": "number", "description": "Total execution time for all calls combined." }
-            ]
-        },
-        {
-            "id": "CPUProfileNode",
-            "type": "object",
-            "description": "CPU Profile node. Holds callsite information, execution statistics and child nodes.",
-            "properties": [
-                { "name": "id", "type": "integer", "description": "Unique identifier for this call site." },
-                { "name": "callInfo", "$ref": "CPUProfileNodeAggregateCallInfo", "description": "Aggregate info about all the calls that making up this node." },
-                { "name": "functionName", "type": "string", "optional": true, "description": "Function name." },
-                { "name": "url", "type": "string", "optional": true, "description": "URL." },
-                { "name": "lineNumber", "type": "integer", "optional": true, "description": "Line number." },
-                { "name": "columnNumber", "type": "integer", "optional": true, "description": "Column number." },
-                { "name": "children", "type": "array", "items": { "$ref": "CPUProfileNode" }, "optional": true, "description": "Child nodes." }
-            ]
-        },
-        {
-            "id": "CPUProfile",
-            "type": "object",
-            "description": "Profile.",
-            "properties": [
-                { "name": "rootNodes", "type": "array", "items": { "$ref": "CPUProfileNode" }, "description": "Top level nodes in the stack." },
-                { "name": "idleTime", "type": "number", "optional": true }
-            ]
         }
     ],
     "commands": [

Modified: trunk/Source/_javascript_Core/jsc.cpp (201236 => 201237)


--- trunk/Source/_javascript_Core/jsc.cpp	2016-05-21 01:17:42 UTC (rev 201236)
+++ trunk/Source/_javascript_Core/jsc.cpp	2016-05-21 02:00:42 UTC (rev 201237)
@@ -868,7 +868,7 @@
 };
 
 const ClassInfo GlobalObject::s_info = { "global", &JSGlobalObject::s_info, nullptr, CREATE_METHOD_TABLE(GlobalObject) };
-const GlobalObjectMethodTable GlobalObject::s_globalObjectMethodTable = { &allowsAccessFrom, &supportsLegacyProfiling, &supportsRichSourceInfo, &shouldInterruptScript, &_javascript_RuntimeFlags, 0, &shouldInterruptScriptBeforeTimeout, &moduleLoaderResolve, &moduleLoaderFetch, nullptr, nullptr, nullptr, nullptr };
+const GlobalObjectMethodTable GlobalObject::s_globalObjectMethodTable = { &allowsAccessFrom, &supportsRichSourceInfo, &shouldInterruptScript, &_javascript_RuntimeFlags, 0, &shouldInterruptScriptBeforeTimeout, &moduleLoaderResolve, &moduleLoaderFetch, nullptr, nullptr, nullptr, nullptr };
 
 
 GlobalObject::GlobalObject(VM& vm, Structure* structure)

Modified: trunk/Source/_javascript_Core/runtime/JSGlobalObject.cpp (201236 => 201237)


--- trunk/Source/_javascript_Core/runtime/JSGlobalObject.cpp	2016-05-21 01:17:42 UTC (rev 201236)
+++ trunk/Source/_javascript_Core/runtime/JSGlobalObject.cpp	2016-05-21 02:00:42 UTC (rev 201237)
@@ -208,7 +208,7 @@
 
 const ClassInfo JSGlobalObject::s_info = { "GlobalObject", &Base::s_info, &globalObjectTable, CREATE_METHOD_TABLE(JSGlobalObject) };
 
-const GlobalObjectMethodTable JSGlobalObject::s_globalObjectMethodTable = { &allowsAccessFrom, &supportsLegacyProfiling, &supportsRichSourceInfo, &shouldInterruptScript, &_javascript_RuntimeFlags, nullptr, &shouldInterruptScriptBeforeTimeout, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr };
+const GlobalObjectMethodTable JSGlobalObject::s_globalObjectMethodTable = { &allowsAccessFrom, &supportsRichSourceInfo, &shouldInterruptScript, &_javascript_RuntimeFlags, nullptr, &shouldInterruptScriptBeforeTimeout, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr };
 
 /* Source for JSGlobalObject.lut.h
 @begin globalObjectTable
@@ -833,7 +833,8 @@
 
 bool JSGlobalObject::hasLegacyProfiler() const
 {
-    return globalObjectMethodTable()->supportsLegacyProfiling(this);
+    // FIXME: Remove Legacy Profiler from _javascript_Core.
+    return false;
 }
 
 bool JSGlobalObject::put(JSCell* cell, ExecState* exec, PropertyName propertyName, JSValue value, PutPropertySlot& slot)

Modified: trunk/Source/_javascript_Core/runtime/JSGlobalObject.h (201236 => 201237)


--- trunk/Source/_javascript_Core/runtime/JSGlobalObject.h	2016-05-21 01:17:42 UTC (rev 201236)
+++ trunk/Source/_javascript_Core/runtime/JSGlobalObject.h	2016-05-21 02:00:42 UTC (rev 201237)
@@ -151,9 +151,6 @@
     typedef bool (*AllowsAccessFromFunctionPtr)(const JSGlobalObject*, ExecState*);
     AllowsAccessFromFunctionPtr allowsAccessFrom;
 
-    typedef bool (*SupportsLegacyProfilingFunctionPtr)(const JSGlobalObject*);
-    SupportsLegacyProfilingFunctionPtr supportsLegacyProfiling;
-
     typedef bool (*SupportsRichSourceInfoFunctionPtr)(const JSGlobalObject*);
     SupportsRichSourceInfoFunctionPtr supportsRichSourceInfo;
 
@@ -717,7 +714,6 @@
     const GlobalObjectMethodTable* globalObjectMethodTable() const { return m_globalObjectMethodTable; }
 
     static bool allowsAccessFrom(const JSGlobalObject*, ExecState*) { return true; }
-    static bool supportsLegacyProfiling(const JSGlobalObject*) { return false; }
     static bool supportsRichSourceInfo(const JSGlobalObject*) { return true; }
 
     JS_EXPORT_PRIVATE ExecState* globalExec();

Modified: trunk/Source/WebCore/CMakeLists.txt (201236 => 201237)


--- trunk/Source/WebCore/CMakeLists.txt	2016-05-21 01:17:42 UTC (rev 201236)
+++ trunk/Source/WebCore/CMakeLists.txt	2016-05-21 02:00:42 UTC (rev 201237)
@@ -590,8 +590,6 @@
 
     inspector/CommandLineAPIHost.idl
     inspector/InspectorFrontendHost.idl
-    inspector/ScriptProfile.idl
-    inspector/ScriptProfileNode.idl
 
     loader/appcache/DOMApplicationCache.idl
 

Modified: trunk/Source/WebCore/ChangeLog (201236 => 201237)


--- trunk/Source/WebCore/ChangeLog	2016-05-21 01:17:42 UTC (rev 201236)
+++ trunk/Source/WebCore/ChangeLog	2016-05-21 02:00:42 UTC (rev 201237)
@@ -1,3 +1,80 @@
+2016-05-20  Joseph Pecoraro  <[email protected]>
+
+        Remove LegacyProfiler
+        https://bugs.webkit.org/show_bug.cgi?id=153565
+
+        Reviewed by Saam Barati.
+
+        _javascript_Core now provides a sampling profiler and it is enabled
+        by all ports. Web Inspector switched months ago to using the
+        sampling profiler and displaying its data. Remove the legacy
+        profiler, as it is no longer being used by anything other then
+        console.profile and tests. We will update console.profile's
+        behavior soon to have new behavior and use the sampling data.
+
+        * CMakeLists.txt:
+        * DerivedSources.cpp:
+        * DerivedSources.make:
+        * ForwardingHeaders/profiler/LegacyProfiler.h: Removed.
+        * WebCore.xcodeproj/project.pbxproj:
+        * bindings/js/JSCustomXPathNSResolver.cpp:
+        * bindings/js/JSDOMWindowBase.cpp:
+        (WebCore::JSDOMWindowBase::supportsLegacyProfiling): Deleted.
+        (WebCore::JSDOMWindowBase::supportsRichSourceInfo): Deleted.
+        * bindings/js/JSDOMWindowBase.h:
+        * bindings/js/JSWorkerGlobalScopeBase.cpp:
+        (WebCore::JSWorkerGlobalScopeBase::supportsLegacyProfiling): Deleted.
+        * bindings/js/JSWorkerGlobalScopeBase.h:
+        * bindings/js/ScriptCachedFrameData.cpp:
+        * bindings/js/ScriptController.cpp:
+        (WebCore::ScriptController::clearWindowShell): Deleted.
+        * bindings/js/ScriptProfile.h: Removed.
+        * bindings/js/ScriptProfileNode.h: Removed.
+        * bindings/scripts/CodeGeneratorJS.pm:
+        (AddClassForwardIfNeeded): Deleted.
+        * bindings/scripts/test/JS/JSTestObj.cpp:
+        (WebCore::jsTestObjPrototypeFunctionMethodWithSequenceArg): Deleted.
+        (WebCore::jsTestObjPrototypeFunctionMethodReturningSequence): Deleted.
+        * bindings/scripts/test/TestObj.idl:
+        * css/CSSParser.cpp:
+        * dom/Document.cpp:
+        * inspector/InspectorConsoleInstrumentation.h:
+        (WebCore::InspectorInstrumentation::stopProfiling):
+        * inspector/InspectorController.cpp:
+        (WebCore::InspectorController::InspectorController):
+        (WebCore::InspectorController::legacyProfilerEnabled): Deleted.
+        (WebCore::InspectorController::setLegacyProfilerEnabled): Deleted.
+        * inspector/InspectorController.h:
+        * inspector/InspectorInstrumentation.cpp:
+        (WebCore::InspectorInstrumentation::stopProfilingImpl):
+        * inspector/InspectorInstrumentation.h:
+        * inspector/InspectorTimelineAgent.cpp:
+        (WebCore::InspectorTimelineAgent::startFromConsole):
+        (WebCore::InspectorTimelineAgent::stopFromConsole):
+        * inspector/InspectorTimelineAgent.h:
+        * inspector/PageDebuggerAgent.cpp:
+        * inspector/PageRuntimeAgent.cpp:
+        * inspector/ScriptProfile.idl: Removed.
+        * inspector/ScriptProfileNode.idl: Removed.
+        * inspector/TimelineRecordFactory.cpp:
+        (WebCore::buildAggregateCallInfoInspectorObject): Deleted.
+        (WebCore::buildInspectorObject): Deleted.
+        (WebCore::buildProfileInspectorObject): Deleted.
+        (WebCore::TimelineRecordFactory::appendProfile): Deleted.
+        * inspector/TimelineRecordFactory.h:
+        * page/DOMWindow.cpp:
+        * page/Page.cpp:
+        * page/PageConsoleClient.cpp:
+        (WebCore::PageConsoleClient::profileEnd):
+        (WebCore::PageConsoleClient::clearProfiles): Deleted.
+        * page/PageConsoleClient.h:
+        * testing/Internals.cpp:
+        (WebCore::Internals::resetToConsistentState): Deleted.
+        (WebCore::Internals::consoleProfiles): Deleted.
+        (WebCore::Internals::setLegacyJavaScriptProfilingEnabled): Deleted.
+        * testing/Internals.h:
+        * testing/Internals.idl:
+
 2016-05-20  Zalan Bujtas  <[email protected]>
 
         `width: 1%` on nested table cell causes its table to hog horizontal space

Modified: trunk/Source/WebCore/DerivedSources.cpp (201236 => 201237)


--- trunk/Source/WebCore/DerivedSources.cpp	2016-05-21 01:17:42 UTC (rev 201236)
+++ trunk/Source/WebCore/DerivedSources.cpp	2016-05-21 02:00:42 UTC (rev 201237)
@@ -421,8 +421,6 @@
 #include "JSRTCTrackEvent.cpp"
 #include "JSScreen.cpp"
 #include "JSScriptProcessorNode.cpp"
-#include "JSScriptProfile.cpp"
-#include "JSScriptProfileNode.cpp"
 #if ENABLE(CSP_NEXT)
 #include "JSSecurityPolicyViolationEvent.cpp"
 #endif

Modified: trunk/Source/WebCore/DerivedSources.make (201236 => 201237)


--- trunk/Source/WebCore/DerivedSources.make	2016-05-21 01:17:42 UTC (rev 201236)
+++ trunk/Source/WebCore/DerivedSources.make	2016-05-21 02:00:42 UTC (rev 201237)
@@ -504,8 +504,6 @@
     $(WebCore)/html/track/VTTCue.idl \
     $(WebCore)/inspector/CommandLineAPIHost.idl \
     $(WebCore)/inspector/InspectorFrontendHost.idl \
-    $(WebCore)/inspector/ScriptProfile.idl \
-    $(WebCore)/inspector/ScriptProfileNode.idl \
     $(WebCore)/loader/appcache/DOMApplicationCache.idl \
     $(WebCore)/page/AbstractView.idl \
     $(WebCore)/page/BarProp.idl \

Deleted: trunk/Source/WebCore/ForwardingHeaders/profiler/LegacyProfiler.h (201236 => 201237)


--- trunk/Source/WebCore/ForwardingHeaders/profiler/LegacyProfiler.h	2016-05-21 01:17:42 UTC (rev 201236)
+++ trunk/Source/WebCore/ForwardingHeaders/profiler/LegacyProfiler.h	2016-05-21 02:00:42 UTC (rev 201237)
@@ -1,5 +0,0 @@
-#ifndef WebCore_FWD_LegacyProfiler_h
-#define WebCore_FWD_LegacyProfiler_h
-#include <_javascript_Core/LegacyProfiler.h>
-#endif
-

Modified: trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj (201236 => 201237)


--- trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj	2016-05-21 01:17:42 UTC (rev 201236)
+++ trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj	2016-05-21 02:00:42 UTC (rev 201237)
@@ -4051,12 +4051,6 @@
 		9DAC7C541AF2CAA100437C44 /* CSSContentDistributionValue.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9DAC7C521AF2CAA100437C44 /* CSSContentDistributionValue.cpp */; };
 		9DAC7C551AF2CAA200437C44 /* CSSContentDistributionValue.h in Headers */ = {isa = PBXBuildFile; fileRef = 9DAC7C531AF2CAA100437C44 /* CSSContentDistributionValue.h */; };
 		9DAC7C571AF2CB6400437C44 /* StyleContentAlignmentData.h in Headers */ = {isa = PBXBuildFile; fileRef = 9DAC7C561AF2CB6400437C44 /* StyleContentAlignmentData.h */; settings = {ATTRIBUTES = (Private, ); }; };
-		9F72304F11184B4100AD0126 /* ScriptProfile.h in Headers */ = {isa = PBXBuildFile; fileRef = 9F72304C11184B4100AD0126 /* ScriptProfile.h */; settings = {ATTRIBUTES = (Private, ); }; };
-		9FA37EE41172FC8000C4CD55 /* ScriptProfileNode.h in Headers */ = {isa = PBXBuildFile; fileRef = 9FA37EE31172FC8000C4CD55 /* ScriptProfileNode.h */; settings = {ATTRIBUTES = (Private, ); }; };
-		9FA37EFA1172FDA600C4CD55 /* JSScriptProfile.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9FA37EF61172FD9300C4CD55 /* JSScriptProfile.cpp */; };
-		9FA37EFB1172FDA600C4CD55 /* JSScriptProfile.h in Headers */ = {isa = PBXBuildFile; fileRef = 9FA37EF71172FD9300C4CD55 /* JSScriptProfile.h */; };
-		9FA37EFC1172FDA600C4CD55 /* JSScriptProfileNode.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9FA37EF81172FD9300C4CD55 /* JSScriptProfileNode.cpp */; };
-		9FA37EFD1172FDA600C4CD55 /* JSScriptProfileNode.h in Headers */ = {isa = PBXBuildFile; fileRef = 9FA37EF91172FD9300C4CD55 /* JSScriptProfileNode.h */; };
 		A07D3355152B630E001B6393 /* JSWebGLShaderPrecisionFormat.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A07D3353152B630E001B6393 /* JSWebGLShaderPrecisionFormat.cpp */; };
 		A07D3356152B630E001B6393 /* JSWebGLShaderPrecisionFormat.h in Headers */ = {isa = PBXBuildFile; fileRef = A07D3354152B630E001B6393 /* JSWebGLShaderPrecisionFormat.h */; };
 		A07D3358152B632D001B6393 /* WebGLShaderPrecisionFormat.h in Headers */ = {isa = PBXBuildFile; fileRef = A07D3357152B632D001B6393 /* WebGLShaderPrecisionFormat.h */; };
@@ -11767,14 +11761,6 @@
 		9DAC7C521AF2CAA100437C44 /* CSSContentDistributionValue.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CSSContentDistributionValue.cpp; sourceTree = "<group>"; };
 		9DAC7C531AF2CAA100437C44 /* CSSContentDistributionValue.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CSSContentDistributionValue.h; sourceTree = "<group>"; };
 		9DAC7C561AF2CB6400437C44 /* StyleContentAlignmentData.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StyleContentAlignmentData.h; sourceTree = "<group>"; };
-		9F72304C11184B4100AD0126 /* ScriptProfile.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ScriptProfile.h; sourceTree = "<group>"; };
-		9FA37EE31172FC8000C4CD55 /* ScriptProfileNode.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ScriptProfileNode.h; sourceTree = "<group>"; };
-		9FA37EEF1172FD4100C4CD55 /* ScriptProfile.idl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = ScriptProfile.idl; sourceTree = "<group>"; };
-		9FA37EF01172FD4100C4CD55 /* ScriptProfileNode.idl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = ScriptProfileNode.idl; sourceTree = "<group>"; };
-		9FA37EF61172FD9300C4CD55 /* JSScriptProfile.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JSScriptProfile.cpp; sourceTree = "<group>"; };
-		9FA37EF71172FD9300C4CD55 /* JSScriptProfile.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JSScriptProfile.h; sourceTree = "<group>"; };
-		9FA37EF81172FD9300C4CD55 /* JSScriptProfileNode.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JSScriptProfileNode.cpp; sourceTree = "<group>"; };
-		9FA37EF91172FD9300C4CD55 /* JSScriptProfileNode.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JSScriptProfileNode.h; sourceTree = "<group>"; };
 		A07D3353152B630E001B6393 /* JSWebGLShaderPrecisionFormat.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JSWebGLShaderPrecisionFormat.cpp; sourceTree = "<group>"; };
 		A07D3354152B630E001B6393 /* JSWebGLShaderPrecisionFormat.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JSWebGLShaderPrecisionFormat.h; sourceTree = "<group>"; };
 		A07D3357152B632D001B6393 /* WebGLShaderPrecisionFormat.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebGLShaderPrecisionFormat.h; sourceTree = "<group>"; };
@@ -16282,10 +16268,6 @@
 				A584FE3A1864E2D800843B10 /* JSCommandLineAPIHost.h */,
 				7A0E771C10C00DB100A0276E /* JSInspectorFrontendHost.cpp */,
 				7A0E771D10C00DB100A0276E /* JSInspectorFrontendHost.h */,
-				9FA37EF61172FD9300C4CD55 /* JSScriptProfile.cpp */,
-				9FA37EF71172FD9300C4CD55 /* JSScriptProfile.h */,
-				9FA37EF81172FD9300C4CD55 /* JSScriptProfileNode.cpp */,
-				9FA37EF91172FD9300C4CD55 /* JSScriptProfileNode.h */,
 			);
 			name = Inspector;
 			sourceTree = "<group>";
@@ -16370,8 +16352,6 @@
 				F382088D147D35F90010BC06 /* PageRuntimeAgent.h */,
 				A5F36D3818F758720054C024 /* PageScriptDebugServer.cpp */,
 				A5F36D3918F758720054C024 /* PageScriptDebugServer.h */,
-				9FA37EEF1172FD4100C4CD55 /* ScriptProfile.idl */,
-				9FA37EF01172FD4100C4CD55 /* ScriptProfileNode.idl */,
 				7553CFE7108F473F00EA281E /* TimelineRecordFactory.cpp */,
 				7553CFE6108F473F00EA281E /* TimelineRecordFactory.h */,
 				A56C5B98189F34570082D13C /* WebConsoleAgent.cpp */,
@@ -22356,8 +22336,6 @@
 				A83E1C720E49042B00140B9C /* ScriptControllerMac.mm */,
 				41F066E30F64BCF600A07EAC /* ScriptGlobalObject.cpp */,
 				41F066E20F64BCF600A07EAC /* ScriptGlobalObject.h */,
-				9F72304C11184B4100AD0126 /* ScriptProfile.h */,
-				9FA37EE31172FC8000C4CD55 /* ScriptProfileNode.h */,
 				934CC1090EDB223900A658F2 /* ScriptSourceCode.h */,
 				4127D5360F8AAB1D00E424F5 /* ScriptState.cpp */,
 				41C760B00EDE03D300C1655F /* ScriptState.h */,
@@ -26834,8 +26812,6 @@
 				5E2C436C1BCF071E0001E2BC /* JSRTCTrackEvent.h in Headers */,
 				BCEC01C30C274DDD009F4EC9 /* JSScreen.h in Headers */,
 				FDA15ECE12B03F61003A583A /* JSScriptProcessorNode.h in Headers */,
-				9FA37EFB1172FDA600C4CD55 /* JSScriptProfile.h in Headers */,
-				9FA37EFD1172FDA600C4CD55 /* JSScriptProfileNode.h in Headers */,
 				CED06AD11C77754800FDFAF1 /* JSSecurityPolicyViolationEvent.h in Headers */,
 				9BDA64D81B975CF2009C4387 /* JSShadowRoot.h in Headers */,
 				CD9DE17B17AAC75B00EA386D /* JSSourceBuffer.h in Headers */,
@@ -27826,8 +27802,6 @@
 				E11C9D9B0EB3681200E409DB /* ScriptExecutionContext.h in Headers */,
 				41F066E40F64BCF600A07EAC /* ScriptGlobalObject.h in Headers */,
 				FD31603612B0267600C1A359 /* ScriptProcessorNode.h in Headers */,
-				9F72304F11184B4100AD0126 /* ScriptProfile.h in Headers */,
-				9FA37EE41172FC8000C4CD55 /* ScriptProfileNode.h in Headers */,
 				8A413AE01207BBA50082016E /* ScriptRunner.h in Headers */,
 				934CC10A0EDB223900A658F2 /* ScriptSourceCode.h in Headers */,
 				41C760B10EDE03D300C1655F /* ScriptState.h in Headers */,
@@ -30600,8 +30574,6 @@
 				5E2C436B1BCF071E0001E2BC /* JSRTCTrackEvent.cpp in Sources */,
 				BCEC01C20C274DDD009F4EC9 /* JSScreen.cpp in Sources */,
 				FDA15ECD12B03F61003A583A /* JSScriptProcessorNode.cpp in Sources */,
-				9FA37EFA1172FDA600C4CD55 /* JSScriptProfile.cpp in Sources */,
-				9FA37EFC1172FDA600C4CD55 /* JSScriptProfileNode.cpp in Sources */,
 				CED06AD01C77754800FDFAF1 /* JSSecurityPolicyViolationEvent.cpp in Sources */,
 				9BDA64D71B975CE5009C4387 /* JSShadowRoot.cpp in Sources */,
 				CD9DE17A17AAC75B00EA386D /* JSSourceBuffer.cpp in Sources */,

Modified: trunk/Source/WebCore/bindings/js/JSCustomXPathNSResolver.cpp (201236 => 201237)


--- trunk/Source/WebCore/bindings/js/JSCustomXPathNSResolver.cpp	2016-05-21 01:17:42 UTC (rev 201236)
+++ trunk/Source/WebCore/bindings/js/JSCustomXPathNSResolver.cpp	2016-05-21 02:00:42 UTC (rev 201237)
@@ -34,7 +34,6 @@
 #include "Page.h"
 #include "PageConsoleClient.h"
 #include "SecurityOrigin.h"
-#include <profiler/Profile.h>
 #include <runtime/JSLock.h>
 #include <wtf/Ref.h>
 

Modified: trunk/Source/WebCore/bindings/js/JSDOMWindowBase.cpp (201236 => 201237)


--- trunk/Source/WebCore/bindings/js/JSDOMWindowBase.cpp	2016-05-21 01:17:42 UTC (rev 201236)
+++ trunk/Source/WebCore/bindings/js/JSDOMWindowBase.cpp	2016-05-21 02:00:42 UTC (rev 201237)
@@ -64,7 +64,7 @@
 
 const ClassInfo JSDOMWindowBase::s_info = { "Window", &JSDOMGlobalObject::s_info, 0, CREATE_METHOD_TABLE(JSDOMWindowBase) };
 
-const GlobalObjectMethodTable JSDOMWindowBase::s_globalObjectMethodTable = { &shouldAllowAccessFrom, &supportsLegacyProfiling, &supportsRichSourceInfo, &shouldInterruptScript, &_javascript_RuntimeFlags, &queueTaskToEventLoop, &shouldInterruptScriptBeforeTimeout, &moduleLoaderResolve, &moduleLoaderFetch, nullptr, nullptr, &moduleLoaderEvaluate, &defaultLanguage };
+const GlobalObjectMethodTable JSDOMWindowBase::s_globalObjectMethodTable = { &shouldAllowAccessFrom, &supportsRichSourceInfo, &shouldInterruptScript, &_javascript_RuntimeFlags, &queueTaskToEventLoop, &shouldInterruptScriptBeforeTimeout, &moduleLoaderResolve, &moduleLoaderFetch, nullptr, nullptr, &moduleLoaderEvaluate, &defaultLanguage };
 
 JSDOMWindowBase::JSDOMWindowBase(VM& vm, Structure* structure, PassRefPtr<DOMWindow> window, JSDOMWindowShell* shell)
     : JSDOMGlobalObject(vm, structure, &shell->world(), &s_globalObjectMethodTable)
@@ -125,20 +125,6 @@
     printErrorMessageForFrame(wrapped().frame(), message);
 }
 
-bool JSDOMWindowBase::supportsLegacyProfiling(const JSGlobalObject* object)
-{
-    const JSDOMWindowBase* thisObject = static_cast<const JSDOMWindowBase*>(object);
-    Frame* frame = thisObject->wrapped().frame();
-    if (!frame)
-        return false;
-
-    Page* page = frame->page();
-    if (!page)
-        return false;
-
-    return page->inspectorController().legacyProfilerEnabled();
-}
-
 bool JSDOMWindowBase::supportsRichSourceInfo(const JSGlobalObject* object)
 {
     const JSDOMWindowBase* thisObject = static_cast<const JSDOMWindowBase*>(object);
@@ -152,7 +138,6 @@
 
     bool enabled = page->inspectorController().enabled();
     ASSERT(enabled || !thisObject->debugger());
-    ASSERT(enabled || !supportsLegacyProfiling(thisObject));
     return enabled;
 }
 

Modified: trunk/Source/WebCore/bindings/js/JSDOMWindowBase.h (201236 => 201237)


--- trunk/Source/WebCore/bindings/js/JSDOMWindowBase.h	2016-05-21 01:17:42 UTC (rev 201236)
+++ trunk/Source/WebCore/bindings/js/JSDOMWindowBase.h	2016-05-21 02:00:42 UTC (rev 201237)
@@ -60,7 +60,6 @@
 
         static const JSC::GlobalObjectMethodTable s_globalObjectMethodTable;
 
-        static bool supportsLegacyProfiling(const JSC::JSGlobalObject*);
         static bool supportsRichSourceInfo(const JSC::JSGlobalObject*);
         static bool shouldInterruptScript(const JSC::JSGlobalObject*);
         static bool shouldInterruptScriptBeforeTimeout(const JSC::JSGlobalObject*);

Modified: trunk/Source/WebCore/bindings/js/JSWorkerGlobalScopeBase.cpp (201236 => 201237)


--- trunk/Source/WebCore/bindings/js/JSWorkerGlobalScopeBase.cpp	2016-05-21 01:17:42 UTC (rev 201236)
+++ trunk/Source/WebCore/bindings/js/JSWorkerGlobalScopeBase.cpp	2016-05-21 02:00:42 UTC (rev 201237)
@@ -44,7 +44,7 @@
 
 const ClassInfo JSWorkerGlobalScopeBase::s_info = { "WorkerGlobalScope", &JSDOMGlobalObject::s_info, 0, CREATE_METHOD_TABLE(JSWorkerGlobalScopeBase) };
 
-const GlobalObjectMethodTable JSWorkerGlobalScopeBase::s_globalObjectMethodTable = { &allowsAccessFrom, &supportsLegacyProfiling, &supportsRichSourceInfo, &shouldInterruptScript, &_javascript_RuntimeFlags, &queueTaskToEventLoop, &shouldInterruptScriptBeforeTimeout, nullptr, nullptr, nullptr, nullptr, nullptr, &defaultLanguage };
+const GlobalObjectMethodTable JSWorkerGlobalScopeBase::s_globalObjectMethodTable = { &allowsAccessFrom, &supportsRichSourceInfo, &shouldInterruptScript, &_javascript_RuntimeFlags, &queueTaskToEventLoop, &shouldInterruptScriptBeforeTimeout, nullptr, nullptr, nullptr, nullptr, nullptr, &defaultLanguage };
 
 JSWorkerGlobalScopeBase::JSWorkerGlobalScopeBase(JSC::VM& vm, JSC::Structure* structure, PassRefPtr<WorkerGlobalScope> impl)
     : JSDOMGlobalObject(vm, structure, &normalWorld(vm), &s_globalObjectMethodTable)
@@ -73,11 +73,6 @@
     return JSGlobalObject::allowsAccessFrom(object, exec);
 }
 
-bool JSWorkerGlobalScopeBase::supportsLegacyProfiling(const JSGlobalObject* object)
-{
-    return JSGlobalObject::supportsLegacyProfiling(object);
-}
-
 bool JSWorkerGlobalScopeBase::supportsRichSourceInfo(const JSGlobalObject* object)
 {
     return JSGlobalObject::supportsRichSourceInfo(object);

Modified: trunk/Source/WebCore/bindings/js/JSWorkerGlobalScopeBase.h (201236 => 201237)


--- trunk/Source/WebCore/bindings/js/JSWorkerGlobalScopeBase.h	2016-05-21 01:17:42 UTC (rev 201236)
+++ trunk/Source/WebCore/bindings/js/JSWorkerGlobalScopeBase.h	2016-05-21 02:00:42 UTC (rev 201237)
@@ -53,7 +53,6 @@
         static const JSC::GlobalObjectMethodTable s_globalObjectMethodTable;
 
         static bool allowsAccessFrom(const JSC::JSGlobalObject*, JSC::ExecState*);
-        static bool supportsLegacyProfiling(const JSC::JSGlobalObject*);
         static bool supportsRichSourceInfo(const JSC::JSGlobalObject*);
         static bool shouldInterruptScript(const JSC::JSGlobalObject*);
         static bool shouldInterruptScriptBeforeTimeout(const JSC::JSGlobalObject*);

Modified: trunk/Source/WebCore/bindings/js/ScriptCachedFrameData.cpp (201236 => 201237)


--- trunk/Source/WebCore/bindings/js/ScriptCachedFrameData.cpp	2016-05-21 01:17:42 UTC (rev 201236)
+++ trunk/Source/WebCore/bindings/js/ScriptCachedFrameData.cpp	2016-05-21 02:00:42 UTC (rev 201237)
@@ -40,7 +40,6 @@
 #include "PageGroup.h"
 #include "ScriptController.h"
 #include <heap/StrongInlines.h>
-#include <profiler/Profile.h>
 #include <runtime/JSLock.h>
 #include <runtime/WeakGCMapInlines.h>
 

Modified: trunk/Source/WebCore/bindings/js/ScriptController.cpp (201236 => 201237)


--- trunk/Source/WebCore/bindings/js/ScriptController.cpp	2016-05-21 01:17:42 UTC (rev 201236)
+++ trunk/Source/WebCore/bindings/js/ScriptController.cpp	2016-05-21 02:00:42 UTC (rev 201237)
@@ -52,7 +52,6 @@
 #include <debugger/Debugger.h>
 #include <heap/StrongInlines.h>
 #include <inspector/ScriptCallStack.h>
-#include <profiler/Profile.h>
 #include <runtime/InitializeThreading.h>
 #include <runtime/JSLock.h>
 #include <wtf/Threading.h>
@@ -215,13 +214,6 @@
         attachDebugger(windowShell, nullptr);
         windowShell->window()->setConsoleClient(nullptr);
 
-        // FIXME: We should clear console profiles for each frame as soon as the frame is destroyed.
-        // Instead of clearing all of them when the main frame is destroyed.
-        if (m_frame.isMainFrame()) {
-            if (Page* page = m_frame.page())
-                page->console().clearProfiles();
-        }
-
         windowShell->window()->willRemoveFromWindowShell();
         windowShell->setWindow(newDOMWindow);
 

Deleted: trunk/Source/WebCore/bindings/js/ScriptProfile.h (201236 => 201237)


--- trunk/Source/WebCore/bindings/js/ScriptProfile.h	2016-05-21 01:17:42 UTC (rev 201236)
+++ trunk/Source/WebCore/bindings/js/ScriptProfile.h	2016-05-21 02:00:42 UTC (rev 201237)
@@ -1,38 +0,0 @@
-/*
- * Copyright (C) 2010, 2014 Apple Inc. All rights reserved.
- * Copyright (C) 2010 Google Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE INC. ``AS IS'' AND ANY
- * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL APPLE INC. OR
- * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
- * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
- * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
- * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#ifndef ScriptProfile_h
-#define ScriptProfile_h
-
-#include <profiler/Profile.h>
-
-namespace WebCore {
-
-typedef JSC::Profile ScriptProfile;
-
-} // namespace WebCore
-
-#endif // ScriptProfile_h

Deleted: trunk/Source/WebCore/bindings/js/ScriptProfileNode.h (201236 => 201237)


--- trunk/Source/WebCore/bindings/js/ScriptProfileNode.h	2016-05-21 01:17:42 UTC (rev 201236)
+++ trunk/Source/WebCore/bindings/js/ScriptProfileNode.h	2016-05-21 02:00:42 UTC (rev 201237)
@@ -1,38 +0,0 @@
-/*
- * Copyright (C) 2010 Apple Inc. All rights reserved.
- * Copyright (C) 2010 Google Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE INC. ``AS IS'' AND ANY
- * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL APPLE INC. OR
- * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
- * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
- * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
- * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#ifndef ScriptProfileNode_h
-#define ScriptProfileNode_h
-
-#include <profiler/ProfileNode.h>
-
-namespace WebCore {
-
-typedef JSC::ProfileNode ScriptProfileNode;
-
-} // namespace WebCore
-
-#endif // ScriptProfileNode_h

Modified: trunk/Source/WebCore/bindings/scripts/CodeGeneratorJS.pm (201236 => 201237)


--- trunk/Source/WebCore/bindings/scripts/CodeGeneratorJS.pm	2016-05-21 01:17:42 UTC (rev 201236)
+++ trunk/Source/WebCore/bindings/scripts/CodeGeneratorJS.pm	2016-05-21 02:00:42 UTC (rev 201237)
@@ -264,12 +264,6 @@
 {
     my $interfaceName = shift;
 
-    if ($interfaceName eq "ScriptProfileNode") {
-        $headerIncludes{"<profiler/ProfileNode.h>"} = 1;
-        push(@headerContent, "typedef JSC::ProfileNode ScriptProfileNode;\n\n");
-        return;
-    }
-
     # SVGAnimatedLength/Number/etc. are typedefs and should not be forward-declared as classes.
     return if $codeGenerator->IsSVGAnimatedType($interfaceName);
 

Modified: trunk/Source/WebCore/bindings/scripts/test/JS/JSTestObj.cpp (201236 => 201237)


--- trunk/Source/WebCore/bindings/scripts/test/JS/JSTestObj.cpp	2016-05-21 01:17:42 UTC (rev 201236)
+++ trunk/Source/WebCore/bindings/scripts/test/JS/JSTestObj.cpp	2016-05-21 02:00:42 UTC (rev 201237)
@@ -42,7 +42,6 @@
 #include "JSNode.h"
 #include "JSSVGDocument.h"
 #include "JSSVGPoint.h"
-#include "JSScriptProfile.h"
 #include "JSTestCallback.h"
 #include "JSTestCallbackFunction.h"
 #include "JSTestNode.h"
@@ -54,7 +53,6 @@
 #include "SVGDocument.h"
 #include "SVGPoint.h"
 #include "SVGStaticPropertyTearOff.h"
-#include "ScriptProfile.h"
 #include "SerializedScriptValue.h"
 #include "Settings.h"
 #include "TestObj.h"
@@ -597,8 +595,6 @@
 JSC::EncodedJSValue JSC_HOST_CALL jsTestObjPrototypeFunctionNullableStringMethod(JSC::ExecState*);
 JSC::EncodedJSValue JSC_HOST_CALL jsTestObjConstructorFunctionNullableStringStaticMethod(JSC::ExecState*);
 JSC::EncodedJSValue JSC_HOST_CALL jsTestObjPrototypeFunctionNullableStringSpecialMethod(JSC::ExecState*);
-JSC::EncodedJSValue JSC_HOST_CALL jsTestObjPrototypeFunctionMethodWithSequenceArg(JSC::ExecState*);
-JSC::EncodedJSValue JSC_HOST_CALL jsTestObjPrototypeFunctionMethodReturningSequence(JSC::ExecState*);
 JSC::EncodedJSValue JSC_HOST_CALL jsTestObjPrototypeFunctionMethodWithEnumArg(JSC::ExecState*);
 JSC::EncodedJSValue JSC_HOST_CALL jsTestObjPrototypeFunctionMethodWithOptionalEnumArg(JSC::ExecState*);
 JSC::EncodedJSValue JSC_HOST_CALL jsTestObjPrototypeFunctionMethodWithOptionalEnumArgAndDefaultValue(JSC::ExecState*);
@@ -1169,8 +1165,6 @@
     { "methodWithXPathNSResolverParameter", JSC::Function, NoIntrinsic, { (intptr_t)static_cast<NativeFunction>(jsTestObjPrototypeFunctionMethodWithXPathNSResolverParameter), (intptr_t) (1) } },
     { "nullableStringMethod", JSC::Function, NoIntrinsic, { (intptr_t)static_cast<NativeFunction>(jsTestObjPrototypeFunctionNullableStringMethod), (intptr_t) (0) } },
     { "nullableStringSpecialMethod", JSC::Function, NoIntrinsic, { (intptr_t)static_cast<NativeFunction>(jsTestObjPrototypeFunctionNullableStringSpecialMethod), (intptr_t) (1) } },
-    { "methodWithSequenceArg", JSC::Function, NoIntrinsic, { (intptr_t)static_cast<NativeFunction>(jsTestObjPrototypeFunctionMethodWithSequenceArg), (intptr_t) (1) } },
-    { "methodReturningSequence", JSC::Function, NoIntrinsic, { (intptr_t)static_cast<NativeFunction>(jsTestObjPrototypeFunctionMethodReturningSequence), (intptr_t) (1) } },
     { "methodWithEnumArg", JSC::Function, NoIntrinsic, { (intptr_t)static_cast<NativeFunction>(jsTestObjPrototypeFunctionMethodWithEnumArg), (intptr_t) (1) } },
     { "methodWithOptionalEnumArg", JSC::Function, NoIntrinsic, { (intptr_t)static_cast<NativeFunction>(jsTestObjPrototypeFunctionMethodWithOptionalEnumArg), (intptr_t) (0) } },
     { "methodWithOptionalEnumArgAndDefaultValue", JSC::Function, NoIntrinsic, { (intptr_t)static_cast<NativeFunction>(jsTestObjPrototypeFunctionMethodWithOptionalEnumArgAndDefaultValue), (intptr_t) (0) } },
@@ -4200,40 +4194,6 @@
     return JSValue::encode(result);
 }
 
-EncodedJSValue JSC_HOST_CALL jsTestObjPrototypeFunctionMethodWithSequenceArg(ExecState* state)
-{
-    JSValue thisValue = state->thisValue();
-    auto castedThis = jsDynamicCast<JSTestObj*>(thisValue);
-    if (UNLIKELY(!castedThis))
-        return throwThisTypeError(*state, "TestObj", "methodWithSequenceArg");
-    ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info());
-    auto& impl = castedThis->wrapped();
-    if (UNLIKELY(state->argumentCount() < 1))
-        return throwVMError(state, createNotEnoughArgumentsError(state));
-    auto sequenceArg = (toRefPtrNativeArray<ScriptProfile, JSScriptProfile>(state, state->argument(0), &JSScriptProfile::toWrapped));
-    if (UNLIKELY(state->hadException()))
-        return JSValue::encode(jsUndefined());
-    impl.methodWithSequenceArg(WTFMove(sequenceArg));
-    return JSValue::encode(jsUndefined());
-}
-
-EncodedJSValue JSC_HOST_CALL jsTestObjPrototypeFunctionMethodReturningSequence(ExecState* state)
-{
-    JSValue thisValue = state->thisValue();
-    auto castedThis = jsDynamicCast<JSTestObj*>(thisValue);
-    if (UNLIKELY(!castedThis))
-        return throwThisTypeError(*state, "TestObj", "methodReturningSequence");
-    ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info());
-    auto& impl = castedThis->wrapped();
-    if (UNLIKELY(state->argumentCount() < 1))
-        return throwVMError(state, createNotEnoughArgumentsError(state));
-    auto longArg = convert<int32_t>(*state, state->argument(0), NormalConversion);
-    if (UNLIKELY(state->hadException()))
-        return JSValue::encode(jsUndefined());
-    JSValue result = jsArray(state, castedThis->globalObject(), impl.methodReturningSequence(WTFMove(longArg)));
-    return JSValue::encode(result);
-}
-
 EncodedJSValue JSC_HOST_CALL jsTestObjPrototypeFunctionMethodWithEnumArg(ExecState* state)
 {
     JSValue thisValue = state->thisValue();

Modified: trunk/Source/WebCore/bindings/scripts/test/TestObj.idl (201236 => 201237)


--- trunk/Source/WebCore/bindings/scripts/test/TestObj.idl	2016-05-21 01:17:42 UTC (rev 201236)
+++ trunk/Source/WebCore/bindings/scripts/test/TestObj.idl	2016-05-21 02:00:42 UTC (rev 201237)
@@ -117,9 +117,6 @@
     static DOMString? nullableStringStaticMethod();
     getter DOMString? nullableStringSpecialMethod(unsigned long index);
 
-    void methodWithSequenceArg(sequence<ScriptProfile> sequenceArg);
-    sequence<ScriptProfile> methodReturningSequence(long longArg);
-
     void methodWithEnumArg(TestEnumType enumArg);
     void methodWithOptionalEnumArg(optional TestEnumType enumArg);
     void methodWithOptionalEnumArgAndDefaultValue(optional TestEnumType enumArg = "EnumValue1");

Modified: trunk/Source/WebCore/css/CSSParser.cpp (201236 => 201237)


--- trunk/Source/WebCore/css/CSSParser.cpp	2016-05-21 01:17:42 UTC (rev 201236)
+++ trunk/Source/WebCore/css/CSSParser.cpp	2016-05-21 02:00:42 UTC (rev 201237)
@@ -100,7 +100,6 @@
 #include "WebKitCSSFilterValue.h"
 #include "WebKitCSSRegionRule.h"
 #include "WebKitCSSTransformValue.h"
-#include <_javascript_Core/Profile.h>
 #include <bitset>
 #include <limits.h>
 #include <wtf/HexNumber.h>

Modified: trunk/Source/WebCore/dom/Document.cpp (201236 => 201237)


--- trunk/Source/WebCore/dom/Document.cpp	2016-05-21 01:17:42 UTC (rev 201236)
+++ trunk/Source/WebCore/dom/Document.cpp	2016-05-21 02:00:42 UTC (rev 201237)
@@ -183,7 +183,6 @@
 #include "XPathNSResolver.h"
 #include "XPathResult.h"
 #include "htmlediting.h"
-#include <_javascript_Core/Profile.h>
 #include <ctime>
 #include <inspector/ScriptCallStack.h>
 #include <wtf/CurrentTime.h>

Modified: trunk/Source/WebCore/inspector/InspectorConsoleInstrumentation.h (201236 => 201237)


--- trunk/Source/WebCore/inspector/InspectorConsoleInstrumentation.h	2016-05-21 01:17:42 UTC (rev 201236)
+++ trunk/Source/WebCore/inspector/InspectorConsoleInstrumentation.h	2016-05-21 02:00:42 UTC (rev 201237)
@@ -33,7 +33,6 @@
 #define InspectorConsoleInstrumentation_h
 
 #include "InspectorInstrumentation.h"
-#include "ScriptProfile.h"
 #include <inspector/ScriptArguments.h>
 #include <inspector/ScriptCallStack.h>
 
@@ -85,9 +84,9 @@
     startProfilingImpl(instrumentingAgentsForPage(page), exec, title);
 }
 
-inline RefPtr<JSC::Profile> InspectorInstrumentation::stopProfiling(Page& page, JSC::ExecState* exec, const String &title)
+inline void InspectorInstrumentation::stopProfiling(Page& page, JSC::ExecState* exec, const String &title)
 {
-    return stopProfilingImpl(instrumentingAgentsForPage(page), exec, title);
+    stopProfilingImpl(instrumentingAgentsForPage(page), exec, title);
 }
 
 } // namespace WebCore

Modified: trunk/Source/WebCore/inspector/InspectorController.cpp (201236 => 201237)


--- trunk/Source/WebCore/inspector/InspectorController.cpp	2016-05-21 01:17:42 UTC (rev 201236)
+++ trunk/Source/WebCore/inspector/InspectorController.cpp	2016-05-21 02:00:42 UTC (rev 201237)
@@ -72,7 +72,6 @@
 #include <inspector/agents/InspectorAgent.h>
 #include <inspector/agents/InspectorHeapAgent.h>
 #include <inspector/agents/InspectorScriptProfilerAgent.h>
-#include <profiler/LegacyProfiler.h>
 #include <runtime/JSLock.h>
 #include <wtf/Stopwatch.h>
 
@@ -171,14 +170,11 @@
     m_instrumentingAgents->setWebConsoleAgent(consoleAgentPtr.get());
     m_agents.append(WTFMove(consoleAgentPtr));
 
-    auto timelineAgentPtr = std::make_unique<InspectorTimelineAgent>(pageContext, scriptProfilerAgent, heapAgent, pageAgent);
-    m_timelineAgent = timelineAgentPtr.get();
-    m_agents.append(WTFMove(timelineAgentPtr));
-
     auto debuggerAgentPtr = std::make_unique<PageDebuggerAgent>(pageContext, pageAgent, m_overlay.get());
     PageDebuggerAgent* debuggerAgent = debuggerAgentPtr.get();
     m_agents.append(WTFMove(debuggerAgentPtr));
 
+    m_agents.append(std::make_unique<InspectorTimelineAgent>(pageContext, scriptProfilerAgent, heapAgent, pageAgent));
     m_agents.append(std::make_unique<InspectorDOMDebuggerAgent>(pageContext, m_domAgent, debuggerAgent));
     m_agents.append(std::make_unique<InspectorApplicationCacheAgent>(pageContext, pageAgent));
     m_agents.append(std::make_unique<InspectorLayerTreeAgent>(pageContext));
@@ -414,27 +410,6 @@
 #endif
 }
 
-bool InspectorController::legacyProfilerEnabled() const
-{
-    return m_legacyProfilerEnabled;
-}
-
-void InspectorController::setLegacyProfilerEnabled(bool enable)
-{
-    m_legacyProfilerEnabled = enable;
-
-    ErrorString unused;
-    if (enable) {
-        m_instrumentingAgents->setPersistentInspectorTimelineAgent(m_timelineAgent);
-        m_scriptDebugServer.recompileAllJSFunctions();
-        m_timelineAgent->start(unused);
-    } else {
-        m_instrumentingAgents->setPersistentInspectorTimelineAgent(nullptr);
-        m_scriptDebugServer.recompileAllJSFunctions();
-        m_timelineAgent->stop(unused);
-    }
-}
-
 bool InspectorController::developerExtrasEnabled() const
 {
     return m_page.settings().developerExtrasEnabled();

Modified: trunk/Source/WebCore/inspector/InspectorController.h (201236 => 201237)


--- trunk/Source/WebCore/inspector/InspectorController.h	2016-05-21 01:17:42 UTC (rev 201236)
+++ trunk/Source/WebCore/inspector/InspectorController.h	2016-05-21 02:00:42 UTC (rev 201237)
@@ -63,7 +63,6 @@
 class InspectorFrontendClient;
 class InspectorInstrumentation;
 class InspectorPageAgent;
-class InspectorTimelineAgent;
 class InstrumentingAgents;
 class Node;
 class Page;
@@ -111,9 +110,6 @@
     void setIsUnderTest(bool isUnderTest) { m_isUnderTest = isUnderTest; }
     WEBCORE_EXPORT void evaluateForTestInFrontend(const String& script);
 
-    WEBCORE_EXPORT bool legacyProfilerEnabled() const;
-    WEBCORE_EXPORT void setLegacyProfilerEnabled(bool);
-
     InspectorClient* inspectorClient() const { return m_inspectorClient; }
     InspectorFrontendClient* inspectorFrontendClient() const { return m_inspectorFrontendClient; }
     InspectorPageAgent* pageAgent() const { return m_pageAgent; }
@@ -148,11 +144,9 @@
     Inspector::InspectorAgent* m_inspectorAgent { nullptr };
     InspectorDOMAgent* m_domAgent { nullptr };
     InspectorPageAgent* m_pageAgent { nullptr };
-    InspectorTimelineAgent* m_timelineAgent { nullptr };
 
     bool m_isUnderTest { false };
     bool m_isAutomaticInspection { false };
-    bool m_legacyProfilerEnabled { false };
 };
 
 } // namespace WebCore

Modified: trunk/Source/WebCore/inspector/InspectorInstrumentation.cpp (201236 => 201237)


--- trunk/Source/WebCore/inspector/InspectorInstrumentation.cpp	2016-05-21 01:17:42 UTC (rev 201236)
+++ trunk/Source/WebCore/inspector/InspectorInstrumentation.cpp	2016-05-21 02:00:42 UTC (rev 201237)
@@ -67,7 +67,6 @@
 #include <inspector/ScriptArguments.h>
 #include <inspector/ScriptCallStack.h>
 #include <inspector/agents/InspectorDebuggerAgent.h>
-#include <profiler/Profile.h>
 #include <runtime/ConsoleTypes.h>
 #include <wtf/StdLibExtras.h>
 #include <wtf/text/CString.h>
@@ -894,11 +893,10 @@
         timelineAgent->startFromConsole(exec, title);
 }
 
-RefPtr<JSC::Profile> InspectorInstrumentation::stopProfilingImpl(InstrumentingAgents& instrumentingAgents, JSC::ExecState* exec, const String& title)
+void InspectorInstrumentation::stopProfilingImpl(InstrumentingAgents& instrumentingAgents, JSC::ExecState* exec, const String& title)
 {
     if (InspectorTimelineAgent* timelineAgent = instrumentingAgents.persistentInspectorTimelineAgent())
-        return timelineAgent->stopFromConsole(exec, title);
-    return nullptr;
+        timelineAgent->stopFromConsole(exec, title);
 }
 
 void InspectorInstrumentation::didOpenDatabaseImpl(InstrumentingAgents& instrumentingAgents, RefPtr<Database>&& database, const String& domain, const String& name, const String& version)

Modified: trunk/Source/WebCore/inspector/InspectorInstrumentation.h (201236 => 201237)


--- trunk/Source/WebCore/inspector/InspectorInstrumentation.h	2016-05-21 01:17:42 UTC (rev 201236)
+++ trunk/Source/WebCore/inspector/InspectorInstrumentation.h	2016-05-21 02:00:42 UTC (rev 201237)
@@ -61,10 +61,6 @@
 class ScriptCallStack;
 }
 
-namespace JSC {
-class Profile;
-}
-
 namespace WebCore {
 
 class CSSRule;
@@ -218,7 +214,7 @@
     static void didFireAnimationFrame(const InspectorInstrumentationCookie&);
 
     static void startProfiling(Page&, JSC::ExecState*, const String& title);
-    static RefPtr<JSC::Profile> stopProfiling(Page&, JSC::ExecState*, const String& title);
+    static void stopProfiling(Page&, JSC::ExecState*, const String& title);
 
     static void didOpenDatabase(ScriptExecutionContext*, RefPtr<Database>&&, const String& domain, const String& name, const String& version);
 
@@ -387,7 +383,7 @@
     static void didFireAnimationFrameImpl(const InspectorInstrumentationCookie&);
 
     static void startProfilingImpl(InstrumentingAgents&, JSC::ExecState*, const String& title);
-    static RefPtr<JSC::Profile> stopProfilingImpl(InstrumentingAgents&, JSC::ExecState*, const String& title);
+    static void stopProfilingImpl(InstrumentingAgents&, JSC::ExecState*, const String& title);
 
     static void didOpenDatabaseImpl(InstrumentingAgents&, RefPtr<Database>&&, const String& domain, const String& name, const String& version);
 

Modified: trunk/Source/WebCore/inspector/InspectorTimelineAgent.cpp (201236 => 201237)


--- trunk/Source/WebCore/inspector/InspectorTimelineAgent.cpp	2016-05-21 01:17:42 UTC (rev 201236)
+++ trunk/Source/WebCore/inspector/InspectorTimelineAgent.cpp	2016-05-21 02:00:42 UTC (rev 201237)
@@ -47,7 +47,6 @@
 #include <inspector/agents/InspectorDebuggerAgent.h>
 #include <inspector/agents/InspectorHeapAgent.h>
 #include <inspector/agents/InspectorScriptProfilerAgent.h>
-#include <profiler/LegacyProfiler.h>
 #include <wtf/Stopwatch.h>
 
 #if PLATFORM(IOS)
@@ -242,58 +241,14 @@
     return m_environment.executionStopwatch()->elapsedTime();
 }
 
-void InspectorTimelineAgent::startFromConsole(JSC::ExecState* exec, const String &title)
+void InspectorTimelineAgent::startFromConsole(JSC::ExecState*, const String&)
 {
     // FIXME: <https://webkit.org/b/153499> Web Inspector: console.profile should use the new Sampling Profiler
-
-    // Only allow recording of a profile if it is anonymous (empty title) or does not match
-    // the title of an already recording profile.
-    if (!title.isEmpty()) {
-        for (const TimelineRecordEntry& record : m_pendingConsoleProfileRecords) {
-            String recordTitle;
-            record.data->getString(ASCIILiteral("title"), recordTitle);
-            if (recordTitle == title)
-                return;
-        }
-    }
-
-    if (!m_enabled && m_pendingConsoleProfileRecords.isEmpty())
-        internalStart();
-
-    JSC::LegacyProfiler::profiler()->startProfiling(exec, title, m_environment.executionStopwatch());
-
-    m_pendingConsoleProfileRecords.append(createRecordEntry(TimelineRecordFactory::createConsoleProfileData(title), TimelineRecordType::ConsoleProfile, true, frameFromExecState(exec)));
 }
 
-RefPtr<JSC::Profile> InspectorTimelineAgent::stopFromConsole(JSC::ExecState* exec, const String& title)
+void InspectorTimelineAgent::stopFromConsole(JSC::ExecState*, const String&)
 {
     // FIXME: <https://webkit.org/b/153499> Web Inspector: console.profile should use the new Sampling Profiler
-
-    // Stop profiles in reverse order. If the title is empty, then stop the last profile.
-    // Otherwise, match the title of the profile to stop.
-    for (ptrdiff_t i = m_pendingConsoleProfileRecords.size() - 1; i >= 0; --i) {
-        const TimelineRecordEntry& record = m_pendingConsoleProfileRecords[i];
-
-        String recordTitle;
-        record.data->getString(ASCIILiteral("title"), recordTitle);
-
-        if (title.isEmpty() || recordTitle == title) {
-            RefPtr<JSC::Profile> profile = "" title);
-            if (profile)
-                TimelineRecordFactory::appendProfile(record.data.get(), profile.copyRef());
-
-            didCompleteRecordEntry(record);
-
-            m_pendingConsoleProfileRecords.remove(i);
-
-            if (!m_enabledFromFrontend && m_pendingConsoleProfileRecords.isEmpty())
-                internalStop();
-
-            return profile;
-        }
-    }
-
-    return nullptr;
 }
 
 void InspectorTimelineAgent::willCallFunction(const String& scriptName, int scriptLine, Frame* frame)

Modified: trunk/Source/WebCore/inspector/InspectorTimelineAgent.h (201236 => 201237)


--- trunk/Source/WebCore/inspector/InspectorTimelineAgent.h	2016-05-21 01:17:42 UTC (rev 201236)
+++ trunk/Source/WebCore/inspector/InspectorTimelineAgent.h	2016-05-21 02:00:42 UTC (rev 201237)
@@ -41,10 +41,6 @@
 #include <inspector/ScriptDebugListener.h>
 #include <wtf/Vector.h>
 
-namespace JSC {
-class Profile;
-}
-
 namespace Inspector {
 class InspectorHeapAgent;
 class InspectorScriptProfilerAgent;
@@ -113,8 +109,8 @@
     void didCommitLoad();
 
     // Methods called from WebCore.
-    void startFromConsole(JSC::ExecState*, const String &title);
-    RefPtr<JSC::Profile> stopFromConsole(JSC::ExecState*, const String& title);
+    void startFromConsole(JSC::ExecState*, const String& title);
+    void stopFromConsole(JSC::ExecState*, const String& title);
 
     // InspectorInstrumentation callbacks.
     void didInstallTimer(int timerId, std::chrono::milliseconds timeout, bool singleShot, Frame*);
@@ -204,11 +200,10 @@
     InspectorPageAgent* m_pageAgent;
 
     Vector<TimelineRecordEntry> m_recordStack;
+
     int m_id { 1 };
     int m_maxCallStackDepth { 5 };
 
-    Vector<TimelineRecordEntry> m_pendingConsoleProfileRecords;
-
     bool m_enabled { false };
     bool m_enabledFromFrontend { false };
 

Modified: trunk/Source/WebCore/inspector/PageDebuggerAgent.cpp (201236 => 201237)


--- trunk/Source/WebCore/inspector/PageDebuggerAgent.cpp	2016-05-21 01:17:42 UTC (rev 201236)
+++ trunk/Source/WebCore/inspector/PageDebuggerAgent.cpp	2016-05-21 02:00:42 UTC (rev 201237)
@@ -45,7 +45,6 @@
 #include <inspector/InjectedScriptManager.h>
 #include <inspector/ScriptCallStack.h>
 #include <inspector/ScriptCallStackFactory.h>
-#include <profiler/Profile.h>
 #include <wtf/NeverDestroyed.h>
 
 using namespace Inspector;

Modified: trunk/Source/WebCore/inspector/PageRuntimeAgent.cpp (201236 => 201237)


--- trunk/Source/WebCore/inspector/PageRuntimeAgent.cpp	2016-05-21 01:17:42 UTC (rev 201236)
+++ trunk/Source/WebCore/inspector/PageRuntimeAgent.cpp	2016-05-21 02:00:42 UTC (rev 201237)
@@ -45,7 +45,6 @@
 #include "SecurityOrigin.h"
 #include <inspector/InjectedScript.h>
 #include <inspector/InjectedScriptManager.h>
-#include <profiler/Profile.h>
 
 using Inspector::Protocol::Runtime::ExecutionContextDescription;
 

Deleted: trunk/Source/WebCore/inspector/ScriptProfile.idl (201236 => 201237)


--- trunk/Source/WebCore/inspector/ScriptProfile.idl	2016-05-21 01:17:42 UTC (rev 201236)
+++ trunk/Source/WebCore/inspector/ScriptProfile.idl	2016-05-21 02:00:42 UTC (rev 201237)
@@ -1,36 +0,0 @@
-/*
- * Copyright (C) 2010 Apple Inc. All rights reserved.
- * Copyright (C) 2010 Google Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE INC. ``AS IS'' AND ANY
- * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL APPLE INC. OR
- * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
- * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
- * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
- * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-[
-    NoInterfaceObject,
-    SkipVTableValidation,
-    ExportMacro=WEBCORE_EXPORT,
-] interface ScriptProfile {
-    readonly attribute DOMString title;
-    readonly attribute unsigned long uid;
-    readonly attribute ScriptProfileNode rootNode;
-};
-

Deleted: trunk/Source/WebCore/inspector/ScriptProfileNode.idl (201236 => 201237)


--- trunk/Source/WebCore/inspector/ScriptProfileNode.idl	2016-05-21 01:17:42 UTC (rev 201236)
+++ trunk/Source/WebCore/inspector/ScriptProfileNode.idl	2016-05-21 02:00:42 UTC (rev 201237)
@@ -1,41 +0,0 @@
-/*
- * Copyright (C) 2010 Apple Inc. All rights reserved.
- * Copyright (C) 2010 Google Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE INC. ``AS IS'' AND ANY
- * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL APPLE INC. OR
- * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
- * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
- * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
- * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-[
-    NoInterfaceObject,
-    ImplementationLacksVTable,
-    ExportMacro=WEBCORE_EXPORT,
-] interface ScriptProfileNode {
-    readonly attribute unsigned long id;
-
-    readonly attribute DOMString functionName;
-
-    readonly attribute DOMString url;
-    readonly attribute unsigned long lineNumber;
-    readonly attribute unsigned long columnNumber;
-
-    sequence<ScriptProfileNode> children();
-};

Modified: trunk/Source/WebCore/inspector/TimelineRecordFactory.cpp (201236 => 201237)


--- trunk/Source/WebCore/inspector/TimelineRecordFactory.cpp	2016-05-21 01:17:42 UTC (rev 201236)
+++ trunk/Source/WebCore/inspector/TimelineRecordFactory.cpp	2016-05-21 02:00:42 UTC (rev 201237)
@@ -39,7 +39,6 @@
 #include <inspector/ScriptBreakpoint.h>
 #include <inspector/ScriptCallStack.h>
 #include <inspector/ScriptCallStackFactory.h>
-#include <profiler/Profile.h>
 
 using namespace Inspector;
 
@@ -152,63 +151,4 @@
     data->setArray(ASCIILiteral("root"), createQuad(quad));
 }
 
-static Ref<Protocol::Timeline::CPUProfileNodeAggregateCallInfo> buildAggregateCallInfoInspectorObject(const JSC::ProfileNode* node)
-{
-    double startTime = node->calls()[0].startTime();
-    double endTime = node->calls().last().startTime() + node->calls().last().elapsedTime();
-
-    double totalTime = 0;
-    for (const JSC::ProfileNode::Call& call : node->calls())
-        totalTime += call.elapsedTime();
-
-    return Protocol::Timeline::CPUProfileNodeAggregateCallInfo::create()
-        .setCallCount(node->calls().size())
-        .setStartTime(startTime)
-        .setEndTime(endTime)
-        .setTotalTime(totalTime)
-        .release();
-}
-
-static Ref<Protocol::Timeline::CPUProfileNode> buildInspectorObject(const JSC::ProfileNode* node)
-{
-    auto result = Protocol::Timeline::CPUProfileNode::create()
-        .setId(node->id())
-        .setCallInfo(buildAggregateCallInfoInspectorObject(node))
-        .release();
-
-    if (!node->functionName().isEmpty())
-        result->setFunctionName(node->functionName());
-
-    if (!node->url().isEmpty()) {
-        result->setUrl(node->url());
-        result->setLineNumber(node->lineNumber());
-        result->setColumnNumber(node->columnNumber());
-    }
-
-    if (!node->children().isEmpty()) {
-        auto children = Protocol::Array<Protocol::Timeline::CPUProfileNode>::create();
-        for (RefPtr<JSC::ProfileNode> profileNode : node->children())
-            children->addItem(buildInspectorObject(profileNode.get()));
-        result->setChildren(WTFMove(children));
-    }
-
-    return result;
-}
-
-static Ref<Protocol::Timeline::CPUProfile> buildProfileInspectorObject(const JSC::Profile* profile)
-{
-    auto rootNodes = Protocol::Array<Protocol::Timeline::CPUProfileNode>::create();
-    for (RefPtr<JSC::ProfileNode> profileNode : profile->rootNode()->children())
-        rootNodes->addItem(buildInspectorObject(profileNode.get()));
-
-    return Protocol::Timeline::CPUProfile::create()
-        .setRootNodes(WTFMove(rootNodes))
-        .release();
-}
-
-void TimelineRecordFactory::appendProfile(InspectorObject* data, RefPtr<JSC::Profile>&& profile)
-{
-    data->setValue(ASCIILiteral("profile"), buildProfileInspectorObject(profile.get()));
-}
-
 } // namespace WebCore

Modified: trunk/Source/WebCore/inspector/TimelineRecordFactory.h (201236 => 201237)


--- trunk/Source/WebCore/inspector/TimelineRecordFactory.h	2016-05-21 01:17:42 UTC (rev 201236)
+++ trunk/Source/WebCore/inspector/TimelineRecordFactory.h	2016-05-21 02:00:42 UTC (rev 201237)
@@ -36,10 +36,6 @@
 #include <wtf/Forward.h>
 #include <wtf/text/WTFString.h>
 
-namespace JSC {
-class Profile;
-}
-
 namespace Inspector {
 struct ScriptBreakpointAction;
 }
@@ -65,7 +61,6 @@
     static Ref<Inspector::InspectorObject> createPaintData(const FloatQuad&);
 
     static void appendLayoutRoot(Inspector::InspectorObject* data, const FloatQuad&);
-    static void appendProfile(Inspector::InspectorObject*, RefPtr<JSC::Profile>&&);
 
 private:
     TimelineRecordFactory() { }

Modified: trunk/Source/WebCore/page/DOMWindow.cpp (201236 => 201237)


--- trunk/Source/WebCore/page/DOMWindow.cpp	2016-05-21 01:17:42 UTC (rev 201236)
+++ trunk/Source/WebCore/page/DOMWindow.cpp	2016-05-21 02:00:42 UTC (rev 201237)
@@ -101,7 +101,6 @@
 #include "WebKitPoint.h"
 #include "WindowFeatures.h"
 #include "WindowFocusAllowedIndicator.h"
-#include <_javascript_Core/Profile.h>
 #include <algorithm>
 #include <inspector/ScriptCallStack.h>
 #include <inspector/ScriptCallStackFactory.h>

Modified: trunk/Source/WebCore/page/Page.cpp (201236 => 201237)


--- trunk/Source/WebCore/page/Page.cpp	2016-05-21 01:17:42 UTC (rev 201236)
+++ trunk/Source/WebCore/page/Page.cpp	2016-05-21 02:00:42 UTC (rev 201237)
@@ -96,7 +96,6 @@
 #include "VisitedLinkStore.h"
 #include "VoidCallback.h"
 #include "Widget.h"
-#include <_javascript_Core/Profile.h>
 #include <wtf/HashMap.h>
 #include <wtf/RefCountedLeakCounter.h>
 #include <wtf/StdLibExtras.h>

Modified: trunk/Source/WebCore/page/PageConsoleClient.cpp (201236 => 201237)


--- trunk/Source/WebCore/page/PageConsoleClient.cpp	2016-05-21 01:17:42 UTC (rev 201236)
+++ trunk/Source/WebCore/page/PageConsoleClient.cpp	2016-05-21 02:00:42 UTC (rev 201237)
@@ -191,8 +191,7 @@
 void PageConsoleClient::profileEnd(JSC::ExecState* exec, const String& title)
 {
     // FIXME: <https://webkit.org/b/153499> Web Inspector: console.profile should use the new Sampling Profiler
-    if (RefPtr<JSC::Profile> profile = "" exec, title))
-        m_profiles.append(WTFMove(profile));
+    InspectorInstrumentation::stopProfiling(m_page, exec, title);
 }
 
 void PageConsoleClient::takeHeapSnapshot(JSC::ExecState*, const String& title)
@@ -216,9 +215,4 @@
     InspectorInstrumentation::consoleTimeStamp(m_page.mainFrame(), WTFMove(arguments));
 }
 
-void PageConsoleClient::clearProfiles()
-{
-    m_profiles.clear();
-}
-
 } // namespace WebCore

Modified: trunk/Source/WebCore/page/PageConsoleClient.h (201236 => 201237)


--- trunk/Source/WebCore/page/PageConsoleClient.h	2016-05-21 01:17:42 UTC (rev 201236)
+++ trunk/Source/WebCore/page/PageConsoleClient.h	2016-05-21 02:00:42 UTC (rev 201237)
@@ -30,7 +30,6 @@
 #define PageConsoleClient_h
 
 #include <inspector/ScriptCallStack.h>
-#include <profiler/Profile.h>
 #include <runtime/ConsoleClient.h>
 #include <wtf/Forward.h>
 
@@ -43,8 +42,6 @@
 class Document;
 class Page;
 
-typedef Vector<RefPtr<JSC::Profile>> ProfilesArray;
-
 class WEBCORE_EXPORT PageConsoleClient final : public JSC::ConsoleClient {
     WTF_MAKE_FAST_ALLOCATED;
 public:
@@ -61,9 +58,6 @@
     void addMessage(MessageSource, MessageLevel, const String& message, RefPtr<Inspector::ScriptCallStack>&&);
     void addMessage(MessageSource, MessageLevel, const String& message, unsigned long requestIdentifier = 0, Document* = nullptr);
 
-    const ProfilesArray& profiles() const { return m_profiles; }
-    void clearProfiles();
-
 protected:
     void messageWithTypeAndLevel(MessageType, MessageLevel, JSC::ExecState*, RefPtr<Inspector::ScriptArguments>&&) override;
     void count(JSC::ExecState*, RefPtr<Inspector::ScriptArguments>&&) override;
@@ -76,7 +70,6 @@
 
 private:
     Page& m_page;
-    ProfilesArray m_profiles;
 };
 
 } // namespace WebCore

Modified: trunk/Source/WebCore/testing/Internals.cpp (201236 => 201237)


--- trunk/Source/WebCore/testing/Internals.cpp	2016-05-21 01:17:42 UTC (rev 201236)
+++ trunk/Source/WebCore/testing/Internals.cpp	2016-05-21 02:00:42 UTC (rev 201237)
@@ -125,7 +125,6 @@
 #include "WebCoreJSClientData.h"
 #include "WorkerThread.h"
 #include "XMLHttpRequest.h"
-#include <_javascript_Core/Profile.h>
 #include <bytecode/CodeBlock.h>
 #include <inspector/InspectorAgentBase.h>
 #include <inspector/InspectorFrontendChannel.h>
@@ -389,7 +388,6 @@
     WebCore::overrideUserPreferredLanguages(Vector<String>());
     WebCore::Settings::setUsesOverlayScrollbars(false);
     WebCore::Settings::setUsesMockScrollAnimator(false);
-    page.inspectorController().setLegacyProfilerEnabled(false);
 #if ENABLE(VIDEO_TRACK)
     page.group().captionPreferences().setCaptionsStyleSheetOverride(emptyString());
     page.group().captionPreferences().setTestingMode(false);
@@ -1734,11 +1732,6 @@
     return document->frame()->editor().countMatchesForText(text, nullptr, findOptions, 1000, mark, nullptr);
 }
 
-const ProfilesArray& Internals::consoleProfiles() const
-{
-    return contextDocument()->page()->console().profiles();
-}
-
 unsigned Internals::numberOfLiveNodes() const
 {
     unsigned nodeCount = 0;
@@ -1767,17 +1760,6 @@
     m_inspectorFrontend = nullptr;
 }
 
-void Internals::setLegacyJavaScriptProfilingEnabled(bool enabled, ExceptionCode& ec)
-{
-    Page* page = contextDocument()->frame()->page();
-    if (!page) {
-        ec = INVALID_ACCESS_ERR;
-        return;
-    }
-
-    page->inspectorController().setLegacyProfilerEnabled(enabled);
-}
-
 void Internals::setInspectorIsUnderTest(bool isUnderTest, ExceptionCode& ec)
 {
     Page* page = contextDocument()->frame()->page();

Modified: trunk/Source/WebCore/testing/Internals.h (201236 => 201237)


--- trunk/Source/WebCore/testing/Internals.h	2016-05-21 01:17:42 UTC (rev 201236)
+++ trunk/Source/WebCore/testing/Internals.h	2016-05-21 02:00:42 UTC (rev 201237)
@@ -267,14 +267,11 @@
     void insertAuthorCSS(const String&, ExceptionCode&) const;
     void insertUserCSS(const String&, ExceptionCode&) const;
 
-    const ProfilesArray& consoleProfiles() const;
-
     unsigned numberOfLiveNodes() const;
     unsigned numberOfLiveDocuments() const;
 
     RefPtr<DOMWindow> openDummyInspectorFrontend(const String& url);
     void closeDummyInspectorFrontend();
-    void setLegacyJavaScriptProfilingEnabled(bool enabled, ExceptionCode&);
     void setInspectorIsUnderTest(bool isUnderTest, ExceptionCode&);
 
     String counterValue(Element&);

Modified: trunk/Source/WebCore/testing/Internals.idl (201236 => 201237)


--- trunk/Source/WebCore/testing/Internals.idl	2016-05-21 01:17:42 UTC (rev 201236)
+++ trunk/Source/WebCore/testing/Internals.idl	2016-05-21 02:00:42 UTC (rev 201237)
@@ -260,16 +260,10 @@
     [RaisesException] void setDeviceProximity(DOMString eventType, unrestricted double value, unrestricted double min, unrestricted double max);
 #endif
 
-    // As per spec: http://www.w3.org/TR/WebIDL/#idl-sequence
-    // "Sequences must not be used as the type of an attribute, constant or exception field."
-    // FIXME: this will lead to BUG internals.consoleProfiles !== internals.consoleProfiles as profile will always returns new array.
-    readonly attribute ScriptProfile[] consoleProfiles;
-
     unsigned long numberOfLiveNodes();
     unsigned long numberOfLiveDocuments();
     DOMWindow openDummyInspectorFrontend(DOMString url);
     void closeDummyInspectorFrontend();
-    [RaisesException] void setLegacyJavaScriptProfilingEnabled(boolean enabled);
     [RaisesException] void setInspectorIsUnderTest(boolean isUnderTest);
 
     DOMString counterValue(Element element);

Modified: trunk/Source/WebKit/win/ChangeLog (201236 => 201237)


--- trunk/Source/WebKit/win/ChangeLog	2016-05-21 01:17:42 UTC (rev 201236)
+++ trunk/Source/WebKit/win/ChangeLog	2016-05-21 02:00:42 UTC (rev 201237)
@@ -1,3 +1,18 @@
+2016-05-20  Joseph Pecoraro  <[email protected]>
+
+        Remove LegacyProfiler
+        https://bugs.webkit.org/show_bug.cgi?id=153565
+
+        Reviewed by Saam Barati.
+
+        * Interfaces/IWebInspector.idl:
+        * WebCoreStatistics.cpp:
+        * WebInspector.cpp:
+        (WebInspector::isJavaScriptProfilingEnabled): Deleted.
+        (WebInspector::setJavaScriptProfilingEnabled): Deleted.
+        * WebInspector.h:
+        * WebView.cpp:
+
 2016-05-16  Joseph Pecoraro  <[email protected]>
 
         Unreviewed rollout r200924. Caused js/regress/string-replace-generic.html to fail.

Modified: trunk/Source/WebKit/win/Interfaces/IWebInspector.idl (201236 => 201237)


--- trunk/Source/WebKit/win/Interfaces/IWebInspector.idl	2016-05-21 01:17:42 UTC (rev 201236)
+++ trunk/Source/WebKit/win/Interfaces/IWebInspector.idl	2016-05-21 02:00:42 UTC (rev 201237)
@@ -52,9 +52,6 @@
     HRESULT isProfilingJavaScript(BOOL* isProfiling);
     HRESULT toggleProfilingJavaScript();
 
-    HRESULT isJavaScriptProfilingEnabled(BOOL* isProfilingEnabled);
-    HRESULT setJavaScriptProfilingEnabled(BOOL enabled);
-
     HRESULT isTimelineProfilingEnabled(BOOL* isEnabled);
     HRESULT setTimelineProfilingEnabled(BOOL enabled);
 }

Modified: trunk/Source/WebKit/win/WebCoreStatistics.cpp (201236 => 201237)


--- trunk/Source/WebKit/win/WebCoreStatistics.cpp	2016-05-21 01:17:42 UTC (rev 201236)
+++ trunk/Source/WebKit/win/WebCoreStatistics.cpp	2016-05-21 02:00:42 UTC (rev 201237)
@@ -29,7 +29,6 @@
 #include "COMPropertyBag.h"
 #include <_javascript_Core/JSLock.h>
 #include <_javascript_Core/MemoryStatistics.h>
-#include <_javascript_Core/Profile.h>
 #include <WebCore/DOMWindow.h>
 #include <WebCore/FontCache.h>
 #include <WebCore/GCController.h>

Modified: trunk/Source/WebKit/win/WebInspector.cpp (201236 => 201237)


--- trunk/Source/WebKit/win/WebInspector.cpp	2016-05-21 01:17:42 UTC (rev 201236)
+++ trunk/Source/WebKit/win/WebInspector.cpp	2016-05-21 02:00:42 UTC (rev 201237)
@@ -202,38 +202,6 @@
     return S_OK;
 }
 
-HRESULT WebInspector::isJavaScriptProfilingEnabled(_Out_ BOOL* isProfilingEnabled)
-{
-    if (!isProfilingEnabled)
-        return E_POINTER;
-
-    *isProfilingEnabled = FALSE;
-
-    if (!m_inspectedWebView)
-        return S_OK;
-
-    Page* inspectedPage = m_inspectedWebView->page();
-    if (!inspectedPage)
-        return S_OK;
-
-    *isProfilingEnabled = inspectedPage->inspectorController().legacyProfilerEnabled();
-    return S_OK;
-}
-
-HRESULT WebInspector::setJavaScriptProfilingEnabled(BOOL enabled)
-{
-    if (!m_inspectedWebView)
-        return S_OK;
-
-    Page* inspectedPage = m_inspectedWebView->page();
-    if (!inspectedPage)
-        return S_OK;
-
-    inspectedPage->inspectorController().setLegacyProfilerEnabled(enabled);
-
-    return S_OK;
-}
-
 HRESULT WebInspector::evaluateInFrontend(_In_ BSTR bScript)
 {
     if (!m_inspectedWebView)

Modified: trunk/Source/WebKit/win/WebInspector.h (201236 => 201237)


--- trunk/Source/WebKit/win/WebInspector.h	2016-05-21 01:17:42 UTC (rev 201236)
+++ trunk/Source/WebKit/win/WebInspector.h	2016-05-21 02:00:42 UTC (rev 201237)
@@ -60,9 +60,6 @@
     virtual HRESULT STDMETHODCALLTYPE isProfilingJavaScript(_Out_ BOOL*);
     virtual HRESULT STDMETHODCALLTYPE toggleProfilingJavaScript();
 
-    virtual HRESULT STDMETHODCALLTYPE isJavaScriptProfilingEnabled(_Out_ BOOL*);
-    virtual HRESULT STDMETHODCALLTYPE setJavaScriptProfilingEnabled(BOOL);
-
     virtual HRESULT STDMETHODCALLTYPE evaluateInFrontend(_In_ BSTR script);
 
     virtual HRESULT STDMETHODCALLTYPE isTimelineProfilingEnabled(_Out_ BOOL*);

Modified: trunk/Source/WebKit/win/WebView.cpp (201236 => 201237)


--- trunk/Source/WebKit/win/WebView.cpp	2016-05-21 01:17:42 UTC (rev 201236)
+++ trunk/Source/WebKit/win/WebView.cpp	2016-05-21 02:00:42 UTC (rev 201237)
@@ -78,7 +78,6 @@
 #include <_javascript_Core/InitializeThreading.h>
 #include <_javascript_Core/JSCJSValue.h>
 #include <_javascript_Core/JSLock.h>
-#include <_javascript_Core/Profile.h>
 #include <WebCore/AXObjectCache.h>
 #include <WebCore/ApplicationCacheStorage.h>
 #include <WebCore/BString.h>
@@ -121,7 +120,6 @@
 #include <WebCore/HitTestResult.h>
 #include <WebCore/IntRect.h>
 #include <WebCore/JSElement.h>
-#include <WebCore/JSScriptProfile.h>
 #include <WebCore/KeyboardEvent.h>
 #include <WebCore/Logging.h>
 #include <WebCore/MIMETypeRegistry.h>
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to