Browse files

Merge WebKit at r82507: Initial merge by git

Change-Id: I60ce9d780725b58b45e54165733a8ffee23b683e
  • Loading branch information...
1 parent 6939c99 commit 2bde8e466a4451c7319e3a072d118917957d6554 Steve Block committed May 25, 2011
Showing with 13,723 additions and 1,852 deletions.
  1. +15 −0 Examples/ChangeLog
  2. +3 −2 LayoutTests/dom/html/level1/core/hc_elementwrongdocumenterr-expected.txt
  3. +3 −2 LayoutTests/dom/html/level1/core/hc_namednodemapwrongdocumenterr-expected.txt
  4. +2 −1 LayoutTests/dom/xhtml/level1/core/hc_elementwrongdocumenterr-expected.txt
  5. +2 −1 LayoutTests/dom/xhtml/level1/core/hc_namednodemapwrongdocumenterr-expected.txt
  6. +10 −0 LayoutTests/fast/dom/Geolocation/page-reload-cancel-permission-requests-expected.txt
  7. +13 −0 LayoutTests/fast/dom/Geolocation/page-reload-cancel-permission-requests.html
  8. +7 −0 LayoutTests/fast/dom/Geolocation/resources/page-reload-cancel-permission-requests-inner.html
  9. +1 −3 LayoutTests/fast/dom/Geolocation/resources/window-close-popup.html
  10. +44 −0 LayoutTests/fast/dom/Geolocation/script-tests/page-reload-cancel-permission-requests.js
  11. +0 −6 LayoutTests/fast/dom/Geolocation/script-tests/window-close-crash.js
  12. +5 −0 LayoutTests/fast/dom/HTMLFormElement/invalid-form-field-expected.txt
  13. +45 −0 LayoutTests/fast/dom/HTMLFormElement/invalid-form-field.html
  14. +5 −0 LayoutTests/fast/dom/HTMLFormElement/move-option-between-documents-expected.txt
  15. +45 −0 LayoutTests/fast/dom/HTMLFormElement/move-option-between-documents.html
  16. +2 −0 LayoutTests/fast/dom/HTMLLinkElement/prefetch-beforeload-expected.txt
  17. +14 −0 LayoutTests/fast/dom/HTMLLinkElement/prefetch-beforeload.html
  18. +6 −0 LayoutTests/fast/dom/HTMLLinkElement/prefetch-onerror-expected.txt
  19. +25 −0 LayoutTests/fast/dom/HTMLLinkElement/prefetch-onerror.html
  20. +0 −1 LayoutTests/fast/encoding/dumpAsText/utf-16-no-bom-expected.txt
  21. +16 −0 LayoutTests/fast/js/resources/js-constructors-use-correct-global.js
  22. +7 −0 LayoutTests/http/tests/appcache/origin-delete-expected.txt
  23. +58 −0 LayoutTests/http/tests/appcache/origin-delete.html
  24. +5 −0 LayoutTests/http/tests/appcache/origins-with-appcache-expected.txt
  25. +57 −0 LayoutTests/http/tests/appcache/origins-with-appcache.html
  26. +20 −0 LayoutTests/http/tests/appcache/resources/origin-delete-iframe.html
  27. +6 −0 LayoutTests/http/tests/appcache/resources/origin-delete-iframe.manifest
  28. +9 −0 LayoutTests/http/tests/appcache/resources/origins-with-appcache-iframe.html
  29. +6 −0 LayoutTests/http/tests/appcache/resources/origins-with-appcache-iframe.manifest
  30. +10 −0 LayoutTests/storage/domstorage/localstorage/storagetracker/storage-tracker-1-prepare-expected.txt
  31. +44 −0 LayoutTests/storage/domstorage/localstorage/storagetracker/storage-tracker-1-prepare.html
  32. +10 −0 LayoutTests/storage/domstorage/localstorage/storagetracker/storage-tracker-2-create-expected.txt
  33. +47 −0 LayoutTests/storage/domstorage/localstorage/storagetracker/storage-tracker-2-create.html
  34. +10 −0 LayoutTests/storage/domstorage/localstorage/storagetracker/storage-tracker-3-delete-all-expected.txt
  35. +47 −0 LayoutTests/storage/domstorage/localstorage/storagetracker/storage-tracker-3-delete-all.html
  36. +11 −0 LayoutTests/storage/domstorage/localstorage/storagetracker/storage-tracker-4-create-expected.txt
  37. +47 −0 LayoutTests/storage/domstorage/localstorage/storagetracker/storage-tracker-4-create.html
  38. +10 −0 LayoutTests/storage/domstorage/localstorage/storagetracker/storage-tracker-5-delete-one-expected.txt
  39. +47 −0 LayoutTests/storage/domstorage/localstorage/storagetracker/storage-tracker-5-delete-one.html
  40. +14 −0 PerformanceTests/ChangeLog
  41. +62 −0 PerformanceTests/PageLoad/svg/files/Sierpinski_carpet_6.svg
  42. +1 −0 PerformanceTests/PageLoad/svg/svg.pltsuite
  43. +7 −2 Source/CMakeLists.txt
  44. +1 −1 Source/JavaScriptCore/API/APIShims.h
  45. +5 −0 Source/JavaScriptCore/API/JSBase.h
  46. +2 −2 Source/JavaScriptCore/API/JSCallbackConstructor.h
  47. +2 −2 Source/JavaScriptCore/API/JSCallbackFunction.h
  48. +2 −2 Source/JavaScriptCore/API/JSCallbackObject.h
  49. +6 −4 Source/JavaScriptCore/API/JSClassRef.cpp
  50. +1 −1 Source/JavaScriptCore/API/JSClassRef.h
  51. +2 −2 Source/JavaScriptCore/API/JSContextRef.cpp
  52. +3 −3 Source/JavaScriptCore/API/JSObjectRef.cpp
  53. +4 −7 Source/JavaScriptCore/API/JSWeakObjectMapRefPrivate.cpp
  54. +0 −11 Source/JavaScriptCore/API/JSWeakObjectMapRefPrivate.h
  55. +2 −2 Source/JavaScriptCore/API/OpaqueJSString.h
  56. +1 −0 Source/JavaScriptCore/CMakeLists.txt
  57. +3,315 −0 Source/JavaScriptCore/ChangeLog
  58. +12 −2 Source/JavaScriptCore/Configurations/Base.xcconfig
  59. +1 −1 Source/JavaScriptCore/Configurations/Version.xcconfig
  60. +0 −1 Source/JavaScriptCore/DerivedSources.make
  61. +6 −1 Source/JavaScriptCore/GNUmakefile.am
  62. +13 −14 Source/JavaScriptCore/JavaScriptCore.exp
  63. +49 −12 Source/JavaScriptCore/JavaScriptCore.gypi
  64. +1 −0 Source/JavaScriptCore/JavaScriptCore.pri
  65. +9 −1 Source/JavaScriptCore/JavaScriptCore.pro
  66. +0 −1 Source/JavaScriptCore/JavaScriptCore.vcproj/JavaScriptCore.make
  67. +11 −11 Source/JavaScriptCore/JavaScriptCore.vcproj/JavaScriptCore.sln
  68. +10 −12 Source/JavaScriptCore/JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def
  69. +25 −9 Source/JavaScriptCore/JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj
  70. +13 −0 Source/JavaScriptCore/JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCoreDebug.vsprops
  71. +14 −0 Source/JavaScriptCore/JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCoreDebugAll.vsprops
  72. +14 −0 Source/JavaScriptCore/JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCoreDebugCairoCFLite.vsprops
  73. +1 −1 Source/JavaScriptCore/JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCoreGenerated.vcproj
  74. +14 −0 Source/JavaScriptCore/JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCoreProduction.vsprops
  75. +13 −0 Source/JavaScriptCore/JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCoreRelease.vsprops
  76. +14 −0 Source/JavaScriptCore/JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCoreReleaseCairoCFLite.vsprops
  77. +14 −0 Source/JavaScriptCore/JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCoreReleasePGO.vsprops
  78. +15 −0 Source/JavaScriptCore/JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCoreReleasePGOOptimize.vsprops
  79. +9 −9 Source/JavaScriptCore/JavaScriptCore.vcproj/JavaScriptCoreSubmit.sln
  80. +14 −10 Source/JavaScriptCore/JavaScriptCore.vcproj/WTF/WTF.vcproj
  81. +12 −0 Source/JavaScriptCore/JavaScriptCore.vcproj/WTF/WTFDebug.vsprops
  82. +13 −0 Source/JavaScriptCore/JavaScriptCore.vcproj/WTF/WTFDebugAll.vsprops
  83. +13 −0 Source/JavaScriptCore/JavaScriptCore.vcproj/WTF/WTFDebugCairoCFLite.vsprops
  84. +13 −0 Source/JavaScriptCore/JavaScriptCore.vcproj/WTF/WTFProduction.vsprops
  85. +12 −0 Source/JavaScriptCore/JavaScriptCore.vcproj/WTF/WTFRelease.vsprops
  86. +13 −0 Source/JavaScriptCore/JavaScriptCore.vcproj/WTF/WTFReleaseCairoCFLite.vsprops
  87. +13 −0 Source/JavaScriptCore/JavaScriptCore.vcproj/WTF/WTFReleasePGO.vsprops
  88. +8 −8 Source/JavaScriptCore/JavaScriptCore.vcproj/jsc/jsc.vcproj
  89. +11 −0 Source/JavaScriptCore/JavaScriptCore.vcproj/jsc/jscDebug.vsprops
  90. +12 −0 Source/JavaScriptCore/JavaScriptCore.vcproj/jsc/jscDebugAll.vsprops
  91. +12 −0 Source/JavaScriptCore/JavaScriptCore.vcproj/jsc/jscDebugCairoCFLite.vsprops
  92. +12 −0 Source/JavaScriptCore/JavaScriptCore.vcproj/jsc/jscProduction.vsprops
  93. +11 −0 Source/JavaScriptCore/JavaScriptCore.vcproj/jsc/jscRelease.vsprops
  94. +12 −0 Source/JavaScriptCore/JavaScriptCore.vcproj/jsc/jscReleaseCairoCFLite.vsprops
  95. +12 −0 Source/JavaScriptCore/JavaScriptCore.vcproj/jsc/jscReleasePGO.vsprops
  96. +8 −8 Source/JavaScriptCore/JavaScriptCore.vcproj/testapi/testapi.vcproj
  97. +12 −0 Source/JavaScriptCore/JavaScriptCore.vcproj/testapi/testapiDebug.vsprops
  98. +13 −0 Source/JavaScriptCore/JavaScriptCore.vcproj/testapi/testapiDebugAll.vsprops
  99. +13 −0 Source/JavaScriptCore/JavaScriptCore.vcproj/testapi/testapiDebugCairoCFLite.vsprops
  100. +13 −0 Source/JavaScriptCore/JavaScriptCore.vcproj/testapi/testapiProduction.vsprops
  101. +12 −0 Source/JavaScriptCore/JavaScriptCore.vcproj/testapi/testapiRelease.vsprops
  102. +13 −0 Source/JavaScriptCore/JavaScriptCore.vcproj/testapi/testapiReleaseCairoCFLite.vsprops
  103. +111 −5 Source/JavaScriptCore/JavaScriptCore.xcodeproj/project.pbxproj
  104. +0 −1 Source/JavaScriptCore/Makefile
  105. +33 −11 Source/JavaScriptCore/assembler/AbstractMacroAssembler.h
  106. +15 −0 Source/JavaScriptCore/assembler/AssemblerBuffer.h
  107. +34 −22 Source/JavaScriptCore/assembler/AssemblerBufferWithConstantPool.h
  108. +33 −33 Source/JavaScriptCore/assembler/MacroAssembler.h
  109. +45 −45 Source/JavaScriptCore/assembler/MacroAssemblerARM.h
  110. +74 −74 Source/JavaScriptCore/assembler/MacroAssemblerARMv7.h
  111. +39 −7 Source/JavaScriptCore/assembler/MacroAssemblerCodeRef.h
  112. +63 −63 Source/JavaScriptCore/assembler/MacroAssemblerMIPS.h
  113. +12 −12 Source/JavaScriptCore/assembler/MacroAssemblerX86.h
  114. +282 −103 Source/JavaScriptCore/assembler/MacroAssemblerX86Common.h
  115. +56 −43 Source/JavaScriptCore/assembler/MacroAssemblerX86_64.h
  116. +32 −17 Source/JavaScriptCore/assembler/X86Assembler.h
  117. +37 −36 Source/JavaScriptCore/bytecode/CodeBlock.cpp
  118. +41 −90 Source/JavaScriptCore/bytecode/CodeBlock.h
  119. +10 −6 Source/JavaScriptCore/bytecode/EvalCodeCache.h
  120. +31 −14 Source/JavaScriptCore/bytecode/Instruction.h
  121. +5 −4 Source/JavaScriptCore/bytecode/SamplingTool.h
  122. +37 −2 Source/JavaScriptCore/bytecode/StructureStubInfo.cpp
  123. +1 −2 Source/JavaScriptCore/bytecode/StructureStubInfo.h
  124. +41 −39 Source/JavaScriptCore/bytecompiler/BytecodeGenerator.cpp
  125. +4 −12 Source/JavaScriptCore/bytecompiler/BytecodeGenerator.h
  126. +2 −3 Source/JavaScriptCore/bytecompiler/NodesCodegen.cpp
  127. +14 −0 Source/JavaScriptCore/collector/handles/Handle.h
  128. +6 −3 Source/JavaScriptCore/collector/handles/HandleHeap.cpp
  129. +2 −2 Source/JavaScriptCore/collector/handles/HandleHeap.h
  130. +63 −0 Source/JavaScriptCore/collector/handles/HandleStack.cpp
  131. +129 −0 Source/JavaScriptCore/collector/handles/HandleStack.h
  132. +157 −0 Source/JavaScriptCore/collector/handles/Local.h
  133. +35 −33 ...{WebKit2/PluginProcess/mac/PluginProcessShim.cpp → JavaScriptCore/collector/handles/LocalScope.h}
  134. +23 −0 Source/JavaScriptCore/config.h
  135. +16 −8 Source/JavaScriptCore/debugger/Debugger.cpp
  136. +1 −1 Source/JavaScriptCore/debugger/DebuggerActivation.cpp
  137. +2 −2 Source/JavaScriptCore/debugger/DebuggerActivation.h
  138. +9 −8 Source/JavaScriptCore/debugger/DebuggerCallFrame.cpp
  139. +121 −0 Source/JavaScriptCore/dfg/DFGAliasTracker.h
  140. +744 −0 Source/JavaScriptCore/dfg/DFGByteCodeParser.cpp
  141. +47 −0 Source/JavaScriptCore/dfg/DFGByteCodeParser.h
  142. +249 −0 Source/JavaScriptCore/dfg/DFGGenerationInfo.h
  143. +141 −0 Source/JavaScriptCore/dfg/DFGGraph.cpp
  144. +69 −0 Source/JavaScriptCore/dfg/DFGGraph.h
  145. +563 −0 Source/JavaScriptCore/dfg/DFGJITCodeGenerator.cpp
  146. +955 −0 Source/JavaScriptCore/dfg/DFGJITCodeGenerator.h
  147. +429 −0 Source/JavaScriptCore/dfg/DFGJITCompiler.cpp
  148. +325 −0 Source/JavaScriptCore/dfg/DFGJITCompiler.h
  149. +293 −0 Source/JavaScriptCore/dfg/DFGNode.h
  150. +585 −0 Source/JavaScriptCore/dfg/DFGNonSpeculativeJIT.cpp
  151. +211 −0 Source/JavaScriptCore/dfg/DFGNonSpeculativeJIT.h
  152. +220 −0 Source/JavaScriptCore/dfg/DFGOperations.cpp
  153. +83 −0 Source/JavaScriptCore/dfg/DFGOperations.h
  154. +253 −0 Source/JavaScriptCore/dfg/DFGRegisterBank.h
  155. +127 −0 Source/JavaScriptCore/dfg/DFGScoreBoard.h
  156. +663 −0 Source/JavaScriptCore/dfg/DFGSpeculativeJIT.cpp
  157. +356 −0 Source/JavaScriptCore/dfg/DFGSpeculativeJIT.h
  158. +90 −78 Source/JavaScriptCore/gyp/JavaScriptCore.gyp
  159. +9 −0 Source/JavaScriptCore/gyp/generate-dtrace-header.sh
  160. 0 Source/{ → JavaScriptCore}/gyp/run-if-exists.sh
  161. 0 Source/{ → JavaScriptCore}/gyp/update-info-plist.sh
  162. +1 −1 Source/JavaScriptCore/interpreter/CachedCall.h
  163. +1 −1 Source/JavaScriptCore/interpreter/CallFrame.h
  164. +29 −26 Source/JavaScriptCore/interpreter/Interpreter.cpp
  165. +10 −56 Source/JavaScriptCore/interpreter/Register.h
  166. +11 −0 Source/JavaScriptCore/interpreter/RegisterFile.cpp
  167. +7 −1 Source/JavaScriptCore/interpreter/RegisterFile.h
  168. +6 −25 Source/JavaScriptCore/jit/JIT.cpp
  169. +3 −2 Source/JavaScriptCore/jit/JIT.h
  170. +9 −9 Source/JavaScriptCore/jit/JITArithmetic.cpp
  171. +80 −80 Source/JavaScriptCore/jit/JITArithmetic32_64.cpp
  172. +16 −13 Source/JavaScriptCore/jit/JITCall.cpp
  173. +27 −22 Source/JavaScriptCore/jit/JITCall32_64.cpp
  174. +53 −39 Source/JavaScriptCore/jit/JITInlineMethods.h
  175. +118 −117 Source/JavaScriptCore/jit/JITOpcodes.cpp
  176. +167 −167 Source/JavaScriptCore/jit/JITOpcodes32_64.cpp
  177. +72 −73 Source/JavaScriptCore/jit/JITPropertyAccess.cpp
  178. +79 −80 Source/JavaScriptCore/jit/JITPropertyAccess32_64.cpp
  179. +2 −2 Source/JavaScriptCore/jit/JITStubCall.h
  180. +36 −21 Source/JavaScriptCore/jit/JITStubs.cpp
  181. +9 −4 Source/JavaScriptCore/jit/JITStubs.h
  182. +49 −18 Source/JavaScriptCore/jit/JSInterfaceJIT.h
  183. +8 −8 Source/JavaScriptCore/jit/SpecializedThunkJIT.h
  184. +5 −5 Source/JavaScriptCore/jit/ThunkGenerators.cpp
  185. +5 −5 Source/JavaScriptCore/jsc.cpp
  186. +4 −0 Source/JavaScriptCore/jsc.pro
  187. +1 −1 Source/JavaScriptCore/profiler/CallIdentifier.h
  188. +9 −9 Source/JavaScriptCore/profiler/ProfileGenerator.cpp
  189. +5 −4 Source/JavaScriptCore/profiler/ProfileGenerator.h
  190. +19 −6 Source/JavaScriptCore/profiler/Profiler.cpp
  191. +2 −0 Source/JavaScriptCore/profiler/Profiler.h
  192. +5 −4 Source/JavaScriptCore/runtime/ArgList.cpp
  193. +1 −1 Source/JavaScriptCore/runtime/ArgList.h
  194. +6 −8 Source/JavaScriptCore/runtime/Arguments.h
  195. +4 −2 Source/JavaScriptCore/runtime/ArrayConstructor.cpp
  196. +74 −32 Source/JavaScriptCore/runtime/ArrayPrototype.cpp
  197. +2 −2 Source/JavaScriptCore/runtime/ArrayPrototype.h
  198. +3 −3 Source/JavaScriptCore/runtime/BooleanConstructor.cpp
  199. +1 −1 Source/JavaScriptCore/runtime/BooleanConstructor.h
  200. +2 −2 Source/JavaScriptCore/runtime/BooleanObject.cpp
  201. +2 −2 Source/JavaScriptCore/runtime/BooleanObject.h
  202. +8 −6 Source/JavaScriptCore/runtime/Completion.cpp
  203. +9 −16 Source/JavaScriptCore/runtime/ConservativeSet.cpp
  204. +39 −18 Source/JavaScriptCore/runtime/ConservativeSet.h
  205. +3 −3 Source/JavaScriptCore/runtime/DateConstructor.cpp
  206. +1 −1 Source/JavaScriptCore/runtime/DateConstructor.h
  207. +1 −0 Source/JavaScriptCore/runtime/DateConversion.cpp
  208. +2 −9 Source/JavaScriptCore/runtime/DateInstance.cpp
  209. +2 −6 Source/JavaScriptCore/runtime/DateInstance.h
  210. +4 −2 Source/JavaScriptCore/runtime/DatePrototype.h
  211. +2 −2 Source/JavaScriptCore/runtime/ErrorConstructor.cpp
  212. +2 −2 Source/JavaScriptCore/runtime/ErrorInstance.h
Sorry, we could not display the entire diff because too many files (2,862) changed.
View
15 Examples/ChangeLog
@@ -1,3 +1,18 @@
+2011-03-17 Jeff Miller <jeffm@apple.com>
+
+ Use a consistent set of file patterns in the svn:ignore property for all .xcodeproj directories, specifically:
+
+ *.mode*
+ *.pbxuser
+ *.perspective*
+ project.xcworkspace
+ xcuserdata
+
+ * NetscapeCocoaPlugin/NetscapeCocoaPlugin.xcodeproj: Modified property svn:ignore.
+ * NetscapeCoreAnimationMoviePlugin/NetscapeCoreAnimationMoviePlugin.xcodeproj: Modified property svn:ignore.
+ * NetscapeCoreAnimationPlugin/NetscapeCoreAnimationPlugin.xcodeproj: Modified property svn:ignore.
+ * NetscapeInputMethodPlugin/NetscapeInputMethodPlugin.xcodeproj: Modified property svn:ignore.
+
2011-01-17 Dan Bernstein <mitz@apple.com>
Rubber-stamped by Mark Rowe.
View
5 LayoutTests/dom/html/level1/core/hc_elementwrongdocumenterr-expected.txt
@@ -1,2 +1,3 @@
-Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_elementwrongdocumenterr
-Status: Success
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_elementwrongdocumenterr
+Status: failure
+Detail: throw_WRONG_DOCUMENT_ERR: assertTrue failed
View
5 LayoutTests/dom/html/level1/core/hc_namednodemapwrongdocumenterr-expected.txt
@@ -1,2 +1,3 @@
-Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_namednodemapwrongdocumenterr
-Status: Success
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_namednodemapwrongdocumenterr
+Status: failure
+Detail: throw_WRONG_DOCUMENT_ERR: assertTrue failed
View
3 LayoutTests/dom/xhtml/level1/core/hc_elementwrongdocumenterr-expected.txt
@@ -1,2 +1,3 @@
Test http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_elementwrongdocumenterr
-Status Success
+Status failure
+Message throw_WRONG_DOCUMENT_ERR: assertTrue failed
View
3 LayoutTests/dom/xhtml/level1/core/hc_namednodemapwrongdocumenterr-expected.txt
@@ -1,2 +1,3 @@
Test http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_namednodemapwrongdocumenterr
-Status Success
+Status failure
+Message throw_WRONG_DOCUMENT_ERR: assertTrue failed
View
10 LayoutTests/fast/dom/Geolocation/page-reload-cancel-permission-requests-expected.txt
@@ -0,0 +1,10 @@
+Tests that when a page is reloaded, the frame is properly detached from the Geolocation object to ensure that no permission requests are in progress.
+
+On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
+
+
+PASS numPendingRequests is 0
+PASS successfullyParsed is true
+
+TEST COMPLETE
+
View
13 LayoutTests/fast/dom/Geolocation/page-reload-cancel-permission-requests.html
@@ -0,0 +1,13 @@
+<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
+<html>
+<head>
+<link rel="stylesheet" href="../../js/resources/js-test-style.css">
+<script src="../../js/resources/js-test-pre.js"></script>
+</head>
+<body>
+<p id="description"></p>
+<div id="console"></div>
+<script src="script-tests/page-reload-cancel-permission-requests.js"></script>
+<script src="../../js/resources/js-test-post.js"></script>
+</body>
+</html>
View
7 LayoutTests/fast/dom/Geolocation/resources/page-reload-cancel-permission-requests-inner.html
@@ -0,0 +1,7 @@
+<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
+<html>
+ <head>
+ </head>
+ <body onload="window.parent.onIframeReady()">
+ </body>
+</html>
View
4 LayoutTests/fast/dom/Geolocation/resources/window-close-popup.html
@@ -11,9 +11,7 @@
layoutTestController.setMockGeolocationPosition(mockLatitude, mockLongitude, mockAccuracy);
}
- navigator.geolocation.watchPosition(
- function(p) { window.opener.gotPosition(); },
- function(e) { window.opener.failedToCreateWatch(e); });
+ navigator.geolocation.watchPosition(window.opener.gotPosition);
}
</script>
<body onload="loadNext()"></body>
View
44 LayoutTests/fast/dom/Geolocation/script-tests/page-reload-cancel-permission-requests.js
@@ -0,0 +1,44 @@
+description("Tests that when a page is reloaded, the frame is properly detached from the Geolocation object " +
+ "to ensure that no permission requests are in progress.");
+
+window.jsTestIsAsync = true;
+
+var numPendingRequests;
+var isReload = false;
+
+if ("#reload" == location.hash)
+ isReload = true;
+
+if (window.layoutTestController) {
+ numPendingRequests = layoutTestController.numberOfPendingGeolocationPermissionRequests();
+ shouldBe('numPendingRequests', '0');
+
+ if (isReload)
+ finishJSTest();
+}
+
+if (!isReload) {
+ // Kick off a position request and then reload the page, this should set up
+ // a permission request. Permission should be undecided at this point, so the
+ // permission request should still be outstanding by page reload.
+
+ function onIframeReady()
+ {
+ // Make request on remote frame's Geolocation object.
+ iframe.contentWindow.navigator.geolocation.getCurrentPosition(
+ function(p) {
+ testFailed('Permission should not be determined for this page: ' + p);
+ finishJSTest();
+ });
+
+ location.hash = '#reload';
+ location.reload();
+ }
+
+ debug("Create IFrame");
+ var iframe = document.createElement('iframe');
+ iframe.src = 'resources/page-reload-cancel-permission-requests-inner.html';
+ document.body.appendChild(iframe);
+}
+
+window.successfullyParsed = true;
View
6 LayoutTests/fast/dom/Geolocation/script-tests/window-close-crash.js
@@ -28,12 +28,6 @@ function waitForWindowToClose()
finishJSTest();
}
-function failedToCreateWatch(e)
-{
- testFailed("Failed to create watch: " + e);
- finishJSTest();
-}
-
debug("Main page opening resources/window-close-popup.html");
otherWindow = window.open("resources/window-close-popup.html");
View
5 LayoutTests/fast/dom/HTMLFormElement/invalid-form-field-expected.txt
@@ -0,0 +1,5 @@
+PASS str is 'threw exception'
+PASS successfullyParsed is true
+
+TEST COMPLETE
+
View
45 LayoutTests/fast/dom/HTMLFormElement/invalid-form-field.html
@@ -0,0 +1,45 @@
+<!DOCTYPE html>
+<html>
+<head>
+<script src="../../js/resources/js-test-pre.js"></script>
+</head>
+<body>
+<div id="test">
+ <div id="console"></div>
+</body>
+<script>
+window.jsTestIsAsync = true;
+
+var form, input, str;
+
+window.onload = function()
+{
+ form = document.body.appendChild(document.createElement("form"));
+ form.id = "form";
+
+ input = document.createElement("input");
+ input.id = "input";
+ input.setAttribute("form", "form");
+ form.elements.namedItem("input");
+
+ input = null;
+
+ gc();
+ setTimeout(step2, 100);
+}
+
+function step2()
+{
+ try {
+ str = typeof form['input'].form;
+ } catch(e) {
+ str = 'threw exception';
+ }
+ shouldBe("str", "'threw exception'");
+ finishJSTest();
+}
+
+window.successfullyParsed = true;
+</script>
+<script src="../../js/resources/js-test-post.js"></script>
+</html>
View
5 LayoutTests/fast/dom/HTMLFormElement/move-option-between-documents-expected.txt
@@ -0,0 +1,5 @@
+PASS typeof select.options.namedItem('option') is 'undefined'
+PASS successfullyParsed is true
+
+TEST COMPLETE
+
View
45 LayoutTests/fast/dom/HTMLFormElement/move-option-between-documents.html
@@ -0,0 +1,45 @@
+<!DOCTYPE html>
+<html>
+<head>
+<script src="../../js/resources/js-test-pre.js"></script>
+</head>
+<body>
+<div id="test">
+ <div id="console"></div>
+</body>
+<script>
+window.jsTestIsAsync = true;
+
+var select, doc1, doc2, str;
+
+window.onload = function()
+{
+ select = document.createElement("select");
+ var option = select.appendChild(document.createElement("option"));
+ option.id = "option";
+
+ doc1 = document.implementation.createHTMLDocument();
+ doc2 = document.implementation.createHTMLDocument();
+
+ doc1.body.appendChild(select);
+ select.options.namedItem("option");
+
+ select.removeChild(option);
+ option = null;
+
+ gc();
+ setTimeout(step2, 100);
+}
+
+function step2()
+{
+ doc1.body.removeChild(select);
+ doc2.body.appendChild(select);
+ shouldBe("typeof select.options.namedItem('option')", "'undefined'");
+ finishJSTest();
+}
+
+window.successfullyParsed = true;
+</script>
+<script src="../../js/resources/js-test-post.js"></script>
+</html>
View
2 LayoutTests/fast/dom/HTMLLinkElement/prefetch-beforeload-expected.txt
@@ -0,0 +1,2 @@
+PASS beforeload called
+This test will only print "PASS" or "FAIL" if link prefetches are enabled, otherwise it will show nothing below.
View
14 LayoutTests/fast/dom/HTMLLinkElement/prefetch-beforeload.html
@@ -0,0 +1,14 @@
+<body>
+<div id="console"></div>
+<script src="../../js/resources/js-test-pre.js"></script>
+<script>
+if (window.layoutTestController) {
+ layoutTestController.dumpAsText();
+}
+</script>
+<html>
+<p>This test will only print "PASS" or "FAIL" if link prefetches are
+enabled, otherwise it will show nothing below.</p>
+<link href="prefetch.link" rel="prefetch" onbeforeload="testPassed('beforeload called');return false" onload="testFailed('onload')" onerror="testFailed('onerror')" />
+</html>
+
View
6 LayoutTests/fast/dom/HTMLLinkElement/prefetch-onerror-expected.txt
@@ -0,0 +1,6 @@
+This tests that onerror events can be attached to link elements with rel=prefetch. Since prefetch links are just there as a performance optimization, the onerror/onload event is their only programatic side-effect.
+
+If it works you should see a message below saying the test has passed.
+
+PASS onerror was called
+
View
25 LayoutTests/fast/dom/HTMLLinkElement/prefetch-onerror.html
@@ -0,0 +1,25 @@
+<html>
+<head>
+<script src="../../js/resources/js-test-pre.js"></script>
+<script type="text/javascript">
+function done()
+{
+ testPassed('onerror was called');
+ if (window.layoutTestController)
+ layoutTestController.notifyDone();
+}
+if (window.layoutTestController) {
+ layoutTestController.dumpAsText();
+ layoutTestController.waitUntilDone();
+}
+</script>
+</head>
+<body>
+<p>This tests that onerror events can be attached to link elements with rel=prefetch. Since prefetch links are just there as a performance optimization, the onerror/onload event is their only programatic side-effect.</p>
+<p>If it works you should see a message below saying the test has passed.</p>
+<link href="prefetch-noexisty.link" rel="prefetch" onload="testFailed('onload event should not occur')" onerror="done()">
+<hr>
+<div id="console"></div>
+</body>
+</html>
+
View
1 LayoutTests/fast/encoding/dumpAsText/utf-16-no-bom-expected.txt
@@ -2,4 +2,3 @@ This XML file does not appear to have any style information associated with it.
<TEST>
Should be "CYRILLIC SMALL LETTER IO" (like e with diaeresis): ё
</TEST>
-
View
16 LayoutTests/fast/js/resources/js-constructors-use-correct-global.js
@@ -0,0 +1,16 @@
+description("Test to ensure that js constructors create objects with the correct constructor");
+
+var otherGlobal = document.getElementsByTagName("iframe")[0].contentWindow;
+var constructors = ["Object", "Function", "Array", "Number", "String", "Boolean", "RegExp", "Date", "Error", "RangeError", "ReferenceError", "SyntaxError", "TypeError", "URIError", "Image"];
+
+for (var i = 0; i < constructors.length; i++) {
+ shouldBeTrue("new otherGlobal." + constructors[i] + "() instanceof otherGlobal." + constructors[i]);
+ try {
+ if ((typeof (otherGlobal[constructors[i]]())) === "object" || (typeof (otherGlobal[constructors[i]]())) === "function")
+ shouldBeTrue("otherGlobal." + constructors[i] + "() instanceof otherGlobal." + constructors[i]);
+ } catch(e) {
+
+ }
+}
+
+successfullyParsed = true;
View
7 LayoutTests/http/tests/appcache/origin-delete-expected.txt
@@ -0,0 +1,7 @@
+This test checks that application cache groups correctly become obsolete after application cache is deletion for a specific origin.
+
+PASS - cached iframe-1
+clearing cache for origin
+appcache_status=5
+SUCCESS - cache was made obsolete
+
View
58 LayoutTests/http/tests/appcache/origin-delete.html
@@ -0,0 +1,58 @@
+<html>
+<head>
+<script>
+
+// Helpers.
+
+function log(message) {
+ document.getElementById("console").innerHTML += message + "<br>";
+}
+
+// Start and end.
+
+function startTest() {
+ if (window.layoutTestController) {
+ layoutTestController.clearAllApplicationCaches();
+ layoutTestController.dumpApplicationCacheDelegateCallbacks();
+ layoutTestController.dumpAsText();
+ layoutTestController.waitUntilDone();
+ }
+
+ addIFrameWithAppCache();
+}
+
+function finishTest() {
+ if (window.layoutTestController)
+ layoutTestController.notifyDone();
+}
+
+function addIFrameWithAppCache() {
+ var iframe = document.createElement("iframe");
+ iframe.src = "resources/origin-delete-iframe.html";
+ iframe.id = "cachedFrame";
+ document.body.appendChild(iframe);
+
+ window.onmessage = function(event) {
+ log(event.data);
+ if (event.data === "PASS - cached iframe-1") {
+ log("clearing cache for origin");
+ layoutTestController.clearApplicationCacheForOrigin("http://127.0.0.1:8000");
+ var frame = document.getElementById('cachedFrame');
+ frame.contentWindow.postMessage("appcache_status", "*");
+ } else if (event.data === "appcache_status=5"){
+ log("SUCCESS - cache was made obsolete");
+ finishTest();
+ } else {
+ log("FAIL - received unexpected message " + event.data);
+ finishTest();
+ }
+ };
+}
+</script>
+</head>
+<body onload="startTest()">
+<p>This test checks that application cache groups correctly become obsolete after application cache is deletion for a specific origin.
+</p>
+<pre id="console"></pre>
+</body>
+</html>
View
5 LayoutTests/http/tests/appcache/origins-with-appcache-expected.txt
@@ -0,0 +1,5 @@
+This test verifies that ApplicationCacheStorage can report the set of origins that have an application cache. First, it tests that no origins are reported after all application caches are removed. Then, it loads an iframe that places a PNG into an application cache for the DumpRenderTree origin, and tests that this origin is now reported to have application cache.
+
+Origins with application cache after deletion:
+Origins with application cache after frame was cached: http_127.0.0.1_8000
+
View
57 LayoutTests/http/tests/appcache/origins-with-appcache.html
@@ -0,0 +1,57 @@
+<html>
+<head>
+<script>
+
+// Helpers.
+
+function log(message) {
+ document.getElementById("console").innerHTML += message + "<br>";
+}
+
+function handleMessage(event) {
+ if (event.data === "created_cache") {
+ log("Origins with application cache after frame was cached: " + layoutTestController.originsWithApplicationCache());
+ } else {
+ log("received invalid message from frame '" + event.data + "'");
+ }
+
+ finishTest();
+}
+
+function addIFrameWithCache()
+{
+ var iframe = document.createElement("iframe");
+ iframe.src = "resources/origins-with-appcache-iframe.html";
+ document.body.appendChild(iframe);
+}
+
+// Start and end.
+
+function startTest() {
+ if (window.layoutTestController) {
+ layoutTestController.clearAllApplicationCaches();
+ log("Origins with application cache after deletion: " + layoutTestController.originsWithApplicationCache());
+ layoutTestController.dumpApplicationCacheDelegateCallbacks();
+ layoutTestController.dumpAsText();
+ layoutTestController.waitUntilDone();
+ }
+
+ window.onmessage = handleMessage;
+
+ addIFrameWithCache();
+}
+
+function finishTest() {
+ if (window.layoutTestController)
+ layoutTestController.notifyDone();
+}
+
+</script>
+</head>
+<body onload="startTest()">
+<p>
+This test verifies that ApplicationCacheStorage can report the set of origins that have an application cache. First, it tests that no origins are reported after all application caches are removed. Then, it loads an iframe that places a PNG into an application cache for the DumpRenderTree origin, and tests that this origin is now reported to have application cache.
+</p>
+<pre id="console"></pre>
+</body>
+</html>
View
20 LayoutTests/http/tests/appcache/resources/origin-delete-iframe.html
@@ -0,0 +1,20 @@
+<html manifest="origin-delete-iframe.manifest">
+<script>
+// iframe-1 is expected to succeed.
+applicationCache.oncached = function() { parent.postMessage("PASS - cached iframe-1", "*"); };
+applicationCache.onerror = function() { parent.postMessage("FAIL - error caching iframe-1, expected this to succeed", "*"); };
+applicationCache.onnoupdate = function() { parent.postMessage("FAIL - no update iframe-1, all caches should have been deleted before this test", "*"); };
+
+
+function frameMessageReceived(event) {
+ if (event.data === "appcache_status") {
+ parent.postMessage("appcache_status=" + applicationCache.status, "*");
+ } else {
+ parent.postMessage("FAIL - unrecognized message", "*");
+ }
+}
+
+window.addEventListener("message", frameMessageReceived, false);
+
+</script>
+</html>
View
6 LayoutTests/http/tests/appcache/resources/origin-delete-iframe.manifest
@@ -0,0 +1,6 @@
+CACHE MANIFEST
+
+# This adds ~13K to the app cache
+
+CACHE:
+abe.png
View
9 LayoutTests/http/tests/appcache/resources/origins-with-appcache-iframe.html
@@ -0,0 +1,9 @@
+<html manifest="origins-with-appcache-iframe.manifest">
+<script>
+// iframe-1 is expected to succeed.
+applicationCache.oncached = function() { parent.postMessage("created_cache", "*"); };
+applicationCache.onerror = function() { parent.postMessage("FAIL - error caching iframe, expected this to succeed", "*"); };
+applicationCache.onnoupdate = function() { parent.postMessage("FAIL - no update iframe, all caches should have been deleted before this test", "*"); };
+
+</script>
+</html>
View
6 LayoutTests/http/tests/appcache/resources/origins-with-appcache-iframe.manifest
@@ -0,0 +1,6 @@
+CACHE MANIFEST
+
+# This adds ~13K to the app cache
+
+CACHE:
+abe.png
View
10 ...sts/storage/domstorage/localstorage/storagetracker/storage-tracker-1-prepare-expected.txt
@@ -0,0 +1,10 @@
+Prepare for StorageTracker tests by ensuring that every origin with local storage is deleted.
+
+On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
+
+
+This test should have no visible output on success.
+PASS successfullyParsed is true
+
+TEST COMPLETE
+
View
44 LayoutTests/storage/domstorage/localstorage/storagetracker/storage-tracker-1-prepare.html
@@ -0,0 +1,44 @@
+<html>
+<head>
+<link rel="stylesheet" href="../../../../fast/js/resources/js-test-style.css">
+<script src="../../../../fast/js/resources/js-test-pre.js"></script>
+<script src="../../../../fast/js/resources/js-test-post-function.js"></script>
+</head>
+<body>
+<p id="description"></p>
+<div id="console"></div>
+<script>
+description("Prepare for StorageTracker tests by ensuring that every origin with local storage is deleted.");
+
+if (window.layoutTestController)
+ layoutTestController.waitUntilDone();
+
+function finishTest() {
+ if (window.layoutTestController)
+ layoutTestController.notifyDone();
+}
+
+function test()
+{
+ if (!window.localStorage) {
+ testFailed("localStorage DOES NOT exist");
+ return;
+ }
+
+ debug("This test should have no visible output on success.");
+
+ if (layoutTestController.originsWithLocalStorage().length > 0) {
+ layoutTestController.observeStorageTrackerNotifications(1);
+ layoutTestController.deleteAllLocalStorage();
+ } else {
+ finishTest();
+ }
+}
+
+test();
+
+window.successfullyParsed = true;
+isSuccessfullyParsed();
+</script>
+</body>
+</html>
View
10 ...ests/storage/domstorage/localstorage/storagetracker/storage-tracker-2-create-expected.txt
@@ -0,0 +1,10 @@
+Origin identifier: 'file__0'
+StorageTracker test - write local storage for this origin. Should be called after origins-prepare.html.
+
+On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
+
+
+PASS successfullyParsed is true
+
+TEST COMPLETE
+
View
47 LayoutTests/storage/domstorage/localstorage/storagetracker/storage-tracker-2-create.html
@@ -0,0 +1,47 @@
+<html>
+<head>
+<link rel="stylesheet" href="../../../../fast/js/resources/js-test-style.css">
+<script src="../../../../fast/js/resources/js-test-pre.js"></script>
+<script src="../../../../fast/js/resources/js-test-post-function.js"></script>
+</head>
+<body>
+<p id="description"></p>
+<div id="console"></div>
+<script>
+description("StorageTracker test - write local storage for this origin. Should be called after origins-prepare.html.");
+
+if (window.layoutTestController)
+ layoutTestController.waitUntilDone();
+
+function finishTest() {
+ if (window.layoutTestController)
+ layoutTestController.notifyDone();
+}
+
+function test()
+{
+ if (!window.localStorage) {
+ testFailed("localStorage DOES NOT exist");
+ return;
+ }
+
+ if (layoutTestController.originsWithLocalStorage().length > 0) {
+ // An origin already exists so we can exit.
+ testFailed("An origin already existed with local storage.");
+ layoutTestController.notifyDone();
+ } else {
+ layoutTestController.syncLocalStorage();
+
+ localStorage.someData = 'writeme';
+ // LayoutTestController's notifyDone will be called after the origin change notification comes in.
+ layoutTestController.observeStorageTrackerNotifications(1);
+ }
+}
+
+test();
+
+window.successfullyParsed = true;
+isSuccessfullyParsed();
+</script>
+</body>
+</html>
View
10 .../storage/domstorage/localstorage/storagetracker/storage-tracker-3-delete-all-expected.txt
@@ -0,0 +1,10 @@
+Test API to view origins that have local storage and to delete local storage by origin.
+
+On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
+
+
+PASS layoutTestController.originsWithLocalStorage().toString() is "file__0"
+PASS successfullyParsed is true
+
+TEST COMPLETE
+
View
47 LayoutTests/storage/domstorage/localstorage/storagetracker/storage-tracker-3-delete-all.html
@@ -0,0 +1,47 @@
+<html>
+<head>
+<link rel="stylesheet" href="../../../../fast/js/resources/js-test-style.css">
+<script src="../../../../fast/js/resources/js-test-pre.js"></script>
+<script src="../../../../fast/js/resources/js-test-post-function.js"></script>
+</head>
+<body>
+<p id="description"></p>
+<div id="console"></div>
+<script>
+description("Test API to view origins that have local storage and to delete local storage by origin.");
+
+if (window.layoutTestController)
+ layoutTestController.waitUntilDone();
+
+function finishTest() {
+ if (window.layoutTestController)
+ layoutTestController.notifyDone();
+}
+
+function test()
+{
+ if (!window.localStorage) {
+ testFailed("localStorage DOES NOT exist");
+ return;
+ }
+
+ if (layoutTestController.originsWithLocalStorage().length > 0) {
+ shouldBeEqualToString("layoutTestController.originsWithLocalStorage().toString()", "file__0");
+ // We're just going to delete the existing origin, so we'll get one origin change notification.
+ layoutTestController.observeStorageTrackerNotifications(1);
+ layoutTestController.deleteAllLocalStorage();
+ } else {
+ layoutTestController.notifyDone();
+ testFailed("Ran with no origins with local storage");
+ }
+
+ // At this point, we're guaranteed to have one origin with local storage.
+}
+
+test();
+
+window.successfullyParsed = true;
+isSuccessfullyParsed();
+</script>
+</body>
+</html>
View
11 ...ests/storage/domstorage/localstorage/storagetracker/storage-tracker-4-create-expected.txt
@@ -0,0 +1,11 @@
+Origin identifier: 'file__0'
+StorageTracker test - write local storage for this origin. Should be called after storage-tracker-3-delete-all.html.
+
+On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
+
+
+This test should have no visible output on success.
+PASS successfullyParsed is true
+
+TEST COMPLETE
+
View
47 LayoutTests/storage/domstorage/localstorage/storagetracker/storage-tracker-4-create.html
@@ -0,0 +1,47 @@
+<html>
+<head>
+<link rel="stylesheet" href="../../../../fast/js/resources/js-test-style.css">
+<script src="../../../../fast/js/resources/js-test-pre.js"></script>
+<script src="../../../../fast/js/resources/js-test-post-function.js"></script>
+</head>
+<body>
+<p id="description"></p>
+<div id="console"></div>
+<script>
+description("StorageTracker test - write local storage for this origin. Should be called after storage-tracker-3-delete-all.html.");
+
+if (window.layoutTestController)
+ layoutTestController.waitUntilDone();
+
+function finishTest() {
+ if (window.layoutTestController)
+ layoutTestController.notifyDone();
+}
+
+function test()
+{
+ if (!window.localStorage) {
+ testFailed("localStorage DOES NOT exist");
+ return;
+ }
+
+ debug("This test should have no visible output on success.");
+
+ if (layoutTestController.originsWithLocalStorage().length > 0) {
+ // An origin already exists so we can exit.
+ testFailed("An origin already existed with local storage.");
+ layoutTestController.notifyDone();
+ } else {
+ layoutTestController.syncLocalStorage();
+ localStorage.someOtherData = 'writemeMore';
+ layoutTestController.observeStorageTrackerNotifications(1);
+ }
+}
+
+test();
+
+window.successfullyParsed = true;
+isSuccessfullyParsed();
+</script>
+</body>
+</html>
View
10 .../storage/domstorage/localstorage/storagetracker/storage-tracker-5-delete-one-expected.txt
@@ -0,0 +1,10 @@
+Test API to view origins that have local storage and to delete local storage by origin.
+
+On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
+
+
+PASS layoutTestController.originsWithLocalStorage().toString() is "file__0"
+PASS successfullyParsed is true
+
+TEST COMPLETE
+
View
47 LayoutTests/storage/domstorage/localstorage/storagetracker/storage-tracker-5-delete-one.html
@@ -0,0 +1,47 @@
+<html>
+<head>
+<link rel="stylesheet" href="../../../../fast/js/resources/js-test-style.css">
+<script src="../../../../fast/js/resources/js-test-pre.js"></script>
+<script src="../../../../fast/js/resources/js-test-post-function.js"></script>
+</head>
+<body>
+<p id="description"></p>
+<div id="console"></div>
+<script>
+description("Test API to view origins that have local storage and to delete local storage by origin.");
+
+if (window.layoutTestController)
+ layoutTestController.waitUntilDone();
+
+function finishTest() {
+ if (window.layoutTestController)
+ layoutTestController.notifyDone();
+}
+
+function test()
+{
+ if (!window.localStorage) {
+ testFailed("localStorage DOES NOT exist");
+ return;
+ }
+
+ if (layoutTestController.originsWithLocalStorage().length > 0) {
+ shouldBeEqualToString("layoutTestController.originsWithLocalStorage().toString()", "file__0");
+ // We're just going to delete the existing origin, so we'll get one origin change notification.
+ layoutTestController.observeStorageTrackerNotifications(1);
+ // At this point, we're guaranteed to have one origin with local storage.
+ layoutTestController.deleteLocalStorageForOrigin("file://");
+ } else {
+ testFailed("Ran with no origins with local storage.");
+ layoutTestController.notifyDone();
+ }
+
+}
+
+test();
+
+window.successfullyParsed = true;
+isSuccessfullyParsed();
+</script>
+</body>
+</html>
View
14 PerformanceTests/ChangeLog
@@ -1,3 +1,17 @@
+2011-03-25 Leo Yang <leo.yang@torchmobile.com.cn>
+
+ Reviewed by Dirk Schulze.
+
+ SVG <use> element performance improvement
+ https://bugs.webkit.org/show_bug.cgi?id=57077
+
+ Add a manual test case which is from
+ http://upload.wikimedia.org/wikipedia/commons/4/4e/Sierpinski_carpet_6.svg
+ for svg <use> element performance test.
+
+ * PageLoad/svg/files/Sierpinski_carpet_6.svg: Added.
+ * PageLoad/svg/svg.pltsuite:
+
2011-02-05 Eric Seidel <eric@webkit.org>
Reviewed by Adam Barth.
View
62 PerformanceTests/PageLoad/svg/files/Sierpinski_carpet_6.svg
@@ -0,0 +1,62 @@
+<?xml version="1.0" standalone="no"?>
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.0" width="900" height="900">
+ <defs>
+ <symbol id="s" viewBox="0 0 3 3">
+ <rect fill="#000" width="1" height="1" x="1" y="1"/>
+ </symbol>
+ <symbol id="s1" viewBox="0 0 900 900">
+ <use xlink:href="#s" x="0" y="0" width="900" height="900"/>
+ <use xlink:href="#s" x="0" y="0" width="300" height="300"/>
+ <use xlink:href="#s" x="300" y="0" width="300" height="300"/>
+ <use xlink:href="#s" x="600" y="0" width="300" height="300"/>
+ <use xlink:href="#s" x="0" y="300" width="300" height="300"/>
+ <use xlink:href="#s" x="600" y="300" width="300" height="300"/>
+ <use xlink:href="#s" x="0" y="600" width="300" height="300"/>
+ <use xlink:href="#s" x="300" y="600" width="300" height="300"/>
+ <use xlink:href="#s" x="600" y="600" width="300" height="300"/>
+ </symbol>
+ <symbol id="s2" viewBox="0 0 900 900">
+ <use xlink:href="#s" x="0" y="0" width="900" height="900"/>
+ <use xlink:href="#s1" x="0" y="0" width="300" height="300"/>
+ <use xlink:href="#s1" x="300" y="0" width="300" height="300"/>
+ <use xlink:href="#s1" x="600" y="0" width="300" height="300"/>
+ <use xlink:href="#s1" x="0" y="300" width="300" height="300"/>
+ <use xlink:href="#s1" x="600" y="300" width="300" height="300"/>
+ <use xlink:href="#s1" x="0" y="600" width="300" height="300"/>
+ <use xlink:href="#s1" x="300" y="600" width="300" height="300"/>
+ <use xlink:href="#s1" x="600" y="600" width="300" height="300"/>
+ </symbol>
+ <symbol id="s3" viewBox="0 0 900 900">
+ <use xlink:href="#s" x="0" y="0" width="900" height="900"/>
+ <use xlink:href="#s2" x="0" y="0" width="300" height="300"/>
+ <use xlink:href="#s2" x="300" y="0" width="300" height="300"/>
+ <use xlink:href="#s2" x="600" y="0" width="300" height="300"/>
+ <use xlink:href="#s2" x="0" y="300" width="300" height="300"/>
+ <use xlink:href="#s2" x="600" y="300" width="300" height="300"/>
+ <use xlink:href="#s2" x="0" y="600" width="300" height="300"/>
+ <use xlink:href="#s2" x="300" y="600" width="300" height="300"/>
+ <use xlink:href="#s2" x="600" y="600" width="300" height="300"/>
+ </symbol>
+ <symbol id="s4" viewBox="0 0 900 900">
+ <use xlink:href="#s" x="0" y="0" width="900" height="900"/>
+ <use xlink:href="#s3" x="0" y="0" width="300" height="300"/>
+ <use xlink:href="#s3" x="300" y="0" width="300" height="300"/>
+ <use xlink:href="#s3" x="600" y="0" width="300" height="300"/>
+ <use xlink:href="#s3" x="0" y="300" width="300" height="300"/>
+ <use xlink:href="#s3" x="600" y="300" width="300" height="300"/>
+ <use xlink:href="#s3" x="0" y="600" width="300" height="300"/>
+ <use xlink:href="#s3" x="300" y="600" width="300" height="300"/>
+ <use xlink:href="#s3" x="600" y="600" width="300" height="300"/>
+ </symbol>
+ </defs>
+ <rect width="900" height="900" fill="#fff"/>
+ <use xlink:href="#s" x="0" y="0" width="900" height="900"/>
+ <use xlink:href="#s4" x="0" y="0" width="300" height="300"/>
+ <use xlink:href="#s4" x="300" y="0" width="300" height="300"/>
+ <use xlink:href="#s4" x="600" y="0" width="300" height="300"/>
+ <use xlink:href="#s4" x="0" y="300" width="300" height="300"/>
+ <use xlink:href="#s4" x="600" y="300" width="300" height="300"/>
+ <use xlink:href="#s4" x="0" y="600" width="300" height="300"/>
+ <use xlink:href="#s4" x="300" y="600" width="300" height="300"/>
+ <use xlink:href="#s4" x="600" y="600" width="300" height="300"/>
+</svg>
View
1 PerformanceTests/PageLoad/svg/svg.pltsuite
@@ -17,3 +17,4 @@ file:///WEBKIT_PATH/PerformanceTests/PageLoad/svg/files/hereGear4.svg
file:///WEBKIT_PATH/PerformanceTests/PageLoad/svg/files/mtsthelens.svg
file:///WEBKIT_PATH/PerformanceTests/PageLoad/svg/files/world-iso.svg
file:///WEBKIT_PATH/PerformanceTests/PageLoad/svg/files/worldcup.svg
+file:///WEBKIT_PATH/PerformanceTests/PageLoad/svg/files/Sierpinski_carpet_6.svg
View
9 Source/CMakeLists.txt
@@ -23,8 +23,13 @@ INCLUDE(WebKitFeatures)
# -----------------------------------------------------------------------------
# Determine which port will be built
# -----------------------------------------------------------------------------
-SET(ALL_PORTS Efl)
-OPTION(PORT "choose which WebKit port to build (one of ${ALL_PORTS})" "NOPORT")
+SET(ALL_PORTS Efl WinCE)
+SET(PORT "NOPORT" CACHE STRING "choose which WebKit port to build (one of ${ALL_PORTS})")
+
+LIST(FIND ALL_PORTS ${PORT} RET)
+IF (${RET} EQUAL -1)
+ MESSAGE(FATAL_ERROR "Please choose which WebKit port to build (one of ${ALL_PORTS})")
+ENDIF ()
# -----------------------------------------------------------------------------
# Find common packages (used by all ports)
View
2 Source/JavaScriptCore/API/APIShims.h
@@ -42,7 +42,7 @@ class APIEntryShimWithoutLock {
UNUSED_PARAM(registerThread);
#if ENABLE(JSC_MULTIPLE_THREADS)
if (registerThread)
- globalData->heap.machineStackMarker().registerThread();
+ globalData->heap.machineThreads().addCurrentThread();
#endif
m_globalData->heap.activityCallback()->synchronize();
m_globalData->timeoutChecker.start();
View
5 Source/JavaScriptCore/API/JSBase.h
@@ -80,6 +80,11 @@ typedef struct OpaqueJSValue* JSObjectRef;
#define JS_EXPORT
#endif /* defined(JS_NO_EXPORT) */
+/* JS tests uses WTF but has no config.h, so we need to set the export defines here. */
+#ifndef WTF_EXPORT_PRIVATE
+#define WTF_EXPORT_PRIVATE JS_EXPORT
+#endif
+
#ifdef __cplusplus
extern "C" {
#endif
View
4 Source/JavaScriptCore/API/JSCallbackConstructor.h
@@ -39,9 +39,9 @@ class JSCallbackConstructor : public JSObjectWithGlobalObject {
JSObjectCallAsConstructorCallback callback() const { return m_callback; }
static const ClassInfo s_info;
- static PassRefPtr<Structure> createStructure(JSValue proto)
+ static PassRefPtr<Structure> createStructure(JSGlobalData& globalData, JSValue proto)
{
- return Structure::create(proto, TypeInfo(ObjectType, StructureFlags), AnonymousSlotCount, &s_info);
+ return Structure::create(globalData, proto, TypeInfo(ObjectType, StructureFlags), AnonymousSlotCount, &s_info);
}
protected:
View
4 Source/JavaScriptCore/API/JSCallbackFunction.h
@@ -39,9 +39,9 @@ class JSCallbackFunction : public InternalFunction {
// InternalFunction mish-mashes constructor and function behavior -- we should
// refactor the code so this override isn't necessary
- static PassRefPtr<Structure> createStructure(JSValue proto)
+ static PassRefPtr<Structure> createStructure(JSGlobalData& globalData, JSValue proto)
{
- return Structure::create(proto, TypeInfo(ObjectType, StructureFlags), AnonymousSlotCount, &s_info);
+ return Structure::create(globalData, proto, TypeInfo(ObjectType, StructureFlags), AnonymousSlotCount, &s_info);
}
private:
View
4 Source/JavaScriptCore/API/JSCallbackObject.h
@@ -128,9 +128,9 @@ class JSCallbackObject : public Base {
JSClassRef classRef() const { return m_callbackObjectData->jsClass; }
bool inherits(JSClassRef) const;
- static PassRefPtr<Structure> createStructure(JSValue proto)
+ static PassRefPtr<Structure> createStructure(JSGlobalData& globalData, JSValue proto)
{
- return Structure::create(proto, TypeInfo(ObjectType, StructureFlags), Base::AnonymousSlotCount, &s_info);
+ return Structure::create(globalData, proto, TypeInfo(ObjectType, StructureFlags), Base::AnonymousSlotCount, &s_info);
}
JSValue getPrivateProperty(const Identifier& propertyName) const
View
10 Source/JavaScriptCore/API/JSClassRef.cpp
@@ -84,8 +84,9 @@ OpaqueJSClass::OpaqueJSClass(const JSClassDefinition* definition, OpaqueJSClass*
// Use a local variable here to sidestep an RVCT compiler bug.
StaticValueEntry* entry = new StaticValueEntry(staticValue->getProperty, staticValue->setProperty, staticValue->attributes);
StringImpl* impl = valueName.impl();
- impl->ref();
- m_staticValues->add(impl, entry);
+ StaticValueEntry* existingEntry = m_staticValues->get(impl);
+ m_staticValues->set(impl, entry);
+ delete existingEntry;
}
++staticValue;
}
@@ -99,8 +100,9 @@ OpaqueJSClass::OpaqueJSClass(const JSClassDefinition* definition, OpaqueJSClass*
// Use a local variable here to sidestep an RVCT compiler bug.
StaticFunctionEntry* entry = new StaticFunctionEntry(staticFunction->callAsFunction, staticFunction->attributes);
StringImpl* impl = functionName.impl();
- impl->ref();
- m_staticFunctions->add(impl, entry);
+ StaticFunctionEntry* existingEntry = m_staticFunctions->get(impl);
+ m_staticFunctions->set(impl, entry);
+ delete existingEntry;
}
++staticFunction;
}
View
2 Source/JavaScriptCore/API/JSClassRef.h
@@ -85,7 +85,7 @@ struct OpaqueJSClassContextData {
JSC::WeakGCPtr<JSC::JSObject> cachedPrototype;
};
-struct OpaqueJSClass : public ThreadSafeShared<OpaqueJSClass> {
+struct OpaqueJSClass : public ThreadSafeRefCounted<OpaqueJSClass> {
static PassRefPtr<OpaqueJSClass> create(const JSClassDefinition*);
static PassRefPtr<OpaqueJSClass> createNoAutomaticPrototype(const JSClassDefinition*);
~OpaqueJSClass();
View
4 Source/JavaScriptCore/API/JSContextRef.cpp
@@ -93,11 +93,11 @@ JSGlobalContextRef JSGlobalContextCreateInGroup(JSContextGroupRef group, JSClass
#endif
if (!globalObjectClass) {
- JSGlobalObject* globalObject = new (globalData.get()) JSGlobalObject;
+ JSGlobalObject* globalObject = new (globalData.get()) JSGlobalObject(*globalData);
return JSGlobalContextRetain(toGlobalRef(globalObject->globalExec()));
}
- JSGlobalObject* globalObject = new (globalData.get()) JSCallbackObject<JSGlobalObject>(globalObjectClass, JSCallbackObject<JSGlobalObject>::createStructure(jsNull()));
+ JSGlobalObject* globalObject = new (globalData.get()) JSCallbackObject<JSGlobalObject>(globalObjectClass, JSCallbackObject<JSGlobalObject>::createStructure(*globalData, jsNull()));
ExecState* exec = globalObject->globalExec();
JSValue prototype = globalObjectClass->prototype(exec);
if (!prototype)
View
6 Source/JavaScriptCore/API/JSObjectRef.cpp
@@ -124,7 +124,7 @@ JSObjectRef JSObjectMakeFunction(JSContextRef ctx, JSStringRef name, unsigned pa
args.append(jsString(exec, parameterNames[i]->ustring()));
args.append(jsString(exec, body->ustring()));
- JSObject* result = constructFunction(exec, args, nameID, sourceURL->ustring(), startingLineNumber);
+ JSObject* result = constructFunction(exec, exec->lexicalGlobalObject(), args, nameID, sourceURL->ustring(), startingLineNumber);
if (exec->hadException()) {
if (exception)
*exception = toRef(exec, exec->exception());
@@ -168,7 +168,7 @@ JSObjectRef JSObjectMakeDate(JSContextRef ctx, size_t argumentCount, const JSVal
for (size_t i = 0; i < argumentCount; ++i)
argList.append(toJS(exec, arguments[i]));
- JSObject* result = constructDate(exec, argList);
+ JSObject* result = constructDate(exec, exec->lexicalGlobalObject(), argList);
if (exec->hadException()) {
if (exception)
*exception = toRef(exec, exec->exception());
@@ -207,7 +207,7 @@ JSObjectRef JSObjectMakeRegExp(JSContextRef ctx, size_t argumentCount, const JSV
for (size_t i = 0; i < argumentCount; ++i)
argList.append(toJS(exec, arguments[i]));
- JSObject* result = constructRegExp(exec, argList);
+ JSObject* result = constructRegExp(exec, exec->lexicalGlobalObject(), argList);
if (exec->hadException()) {
if (exception)
*exception = toRef(exec, exec->exception());
View
11 Source/JavaScriptCore/API/JSWeakObjectMapRefPrivate.cpp
@@ -68,14 +68,11 @@ JSObjectRef JSWeakObjectMapGet(JSContextRef ctx, JSWeakObjectMapRef map, void* k
return toRef(static_cast<JSObject*>(map->map().get(key)));
}
-bool JSWeakObjectMapClear(JSContextRef ctx, JSWeakObjectMapRef map, void* key, JSObjectRef object)
+// We need to keep this function in the build to keep the nightlies running.
+JS_EXPORT bool JSWeakObjectMapClear(JSContextRef, JSWeakObjectMapRef, void*, JSObjectRef);
+bool JSWeakObjectMapClear(JSContextRef, JSWeakObjectMapRef, void*, JSObjectRef)
{
- ExecState* exec = toJS(ctx);
- APIEntryShim entryShim(exec);
- JSObject* obj = toJS(object);
- if (map->map().deprecatedRemove(key, obj))
- return true;
- return false;
+ return true;
}
#ifdef __cplusplus
View
11 Source/JavaScriptCore/API/JSWeakObjectMapRefPrivate.h
@@ -76,17 +76,6 @@ JS_EXPORT void JSWeakObjectMapSet(JSContextRef ctx, JSWeakObjectMapRef map, void
*/
JS_EXPORT JSObjectRef JSWeakObjectMapGet(JSContextRef ctx, JSWeakObjectMapRef map, void* key);
-/*!
- @function
- @abstract Clears the association between a key and an object in a JSWeakObjectMapRef
- @param ctx The execution context to use.
- @param map The map to clear the key association from.
- @param key The key to use.
- @param object The old object value.
- @result Returns true if the key/object association was present in map, and has been removed.
- */
-JS_EXPORT bool JSWeakObjectMapClear(JSContextRef ctx, JSWeakObjectMapRef map, void* key, JSObjectRef object);
-
#ifdef __cplusplus
}
#endif
View
4 Source/JavaScriptCore/API/OpaqueJSString.h
@@ -33,7 +33,7 @@ namespace JSC {
class JSGlobalData;
}
-struct OpaqueJSString : public ThreadSafeShared<OpaqueJSString> {
+struct OpaqueJSString : public ThreadSafeRefCounted<OpaqueJSString> {
static PassRefPtr<OpaqueJSString> create() // null
{
@@ -54,7 +54,7 @@ struct OpaqueJSString : public ThreadSafeShared<OpaqueJSString> {
JSC::Identifier identifier(JSC::JSGlobalData*) const;
private:
- friend class WTF::ThreadSafeShared<OpaqueJSString>;
+ friend class WTF::ThreadSafeRefCounted<OpaqueJSString>;
OpaqueJSString()
: m_characters(0)
View
1 Source/JavaScriptCore/CMakeLists.txt
@@ -42,6 +42,7 @@ SET(JavaScriptCore_SOURCES
bytecompiler/NodesCodegen.cpp
collector/handles/HandleHeap.cpp
+ collector/handles/HandleStack.cpp
debugger/Debugger.cpp
debugger/DebuggerActivation.cpp
View
3,315 Source/JavaScriptCore/ChangeLog
3,315 additions, 0 deletions not shown because the diff is too large. Please use a local Git client to view these changes.
View
14 Source/JavaScriptCore/Configurations/Base.xcconfig
@@ -25,7 +25,6 @@ DEBUG_INFORMATION_FORMAT = dwarf;
GCC_C_LANGUAGE_STANDARD = gnu99;
GCC_DEBUGGING_SYMBOLS = default;
GCC_DYNAMIC_NO_PIC = NO;
-GCC_ENABLE_CPP_EXCEPTIONS = NO;
GCC_ENABLE_CPP_RTTI = NO;
GCC_ENABLE_OBJC_EXCEPTIONS = YES;
GCC_ENABLE_OBJC_GC = $(GCC_ENABLE_OBJC_GC_$(REAL_PLATFORM_NAME));
@@ -118,12 +117,23 @@ TARGET_GCC_VERSION_macosx_1050_ = $(TARGET_GCC_VERSION_macosx_1050_$(XCODE_VERSI
TARGET_GCC_VERSION_macosx_1050_0310 = GCC_42;
TARGET_GCC_VERSION_macosx_1050_0320 = GCC_42;
TARGET_GCC_VERSION_macosx_1060 = GCC_42;
-TARGET_GCC_VERSION_macosx_1070 = LLVM_GCC_42;
+TARGET_GCC_VERSION_macosx_1070 = $(TARGET_GCC_VERSION_macosx_1070_$(CONFIGURATION));
+TARGET_GCC_VERSION_macosx_1070_Debug = LLVM_COMPILER;
+TARGET_GCC_VERSION_macosx_1070_Release = LLVM_GCC_42;
+TARGET_GCC_VERSION_macosx_1070_Production = LLVM_GCC_42;
GCC_VERSION = $(GCC_VERSION_$(TARGET_GCC_VERSION));
GCC_VERSION_GCC_40 = 4.0;
GCC_VERSION_GCC_42 = 4.2;
GCC_VERSION_LLVM_GCC_42 = com.apple.compilers.llvmgcc42;
+GCC_VERSION_LLVM_COMPILER = com.apple.compilers.llvm.clang.1_0;
+
+// FIXME: Disable C++ exceptions in the LLVM Compiler once it supports enabling Obj-C exceptions without C++ exceptions.
+GCC_ENABLE_CPP_EXCEPTIONS = $(GCC_ENABLE_CPP_EXCEPTIONS_$(TARGET_GCC_VERSION));
+GCC_ENABLE_CPP_EXCEPTIONS_GCC_40 = NO;
+GCC_ENABLE_CPP_EXCEPTIONS_GCC_42 = NO;
+GCC_ENABLE_CPP_EXCEPTIONS_LLVM_GCC = NO;
+GCC_ENABLE_CPP_EXCEPTIONS_LLVM_COMPILER = YES;
// If the target Mac OS X version does not match the current Mac OS X version then we'll want to build using the target version's SDK.
SDKROOT = $(SDKROOT_$(MAC_OS_X_VERSION_MAJOR)_$(TARGET_MAC_OS_X_VERSION_MAJOR));
View
2 Source/JavaScriptCore/Configurations/Version.xcconfig
@@ -22,7 +22,7 @@
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
MAJOR_VERSION = 534;
-MINOR_VERSION = 24;
+MINOR_VERSION = 27;
TINY_VERSION = 0;
FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION);
View
1 Source/JavaScriptCore/DerivedSources.make
@@ -84,7 +84,6 @@ HeaderDetection.h : DerivedSources.make /System/Library/CoreServices/SystemVersi
rm -f $@
echo "/* This is a generated file. Do not edit. */" > $@
if [ -f $(SDKROOT)/System/Library/Frameworks/System.framework/PrivateHeaders/pthread_machdep.h ]; then echo "#define HAVE_PTHREAD_MACHDEP_H 1" >> $@; else echo >> $@; fi
- if [ -f $(SDKROOT)/System/Library/Frameworks/AppKit.framework/PrivateHeaders/NSScrollerImpPair_Private.h ]; then echo "#define USE_WK_SCROLLBAR_PAINTER_AND_CONTROLLER 1" >> $@; else echo >> $@; fi
else
View
7 Source/JavaScriptCore/GNUmakefile.am
@@ -115,6 +115,10 @@ javascriptcore_sources += \
Source/JavaScriptCore/collector/handles/Handle.h \
Source/JavaScriptCore/collector/handles/HandleHeap.cpp \
Source/JavaScriptCore/collector/handles/HandleHeap.h \
+ Source/JavaScriptCore/collector/handles/HandleStack.cpp \
+ Source/JavaScriptCore/collector/handles/HandleStack.h \
+ Source/JavaScriptCore/collector/handles/Local.h \
+ Source/JavaScriptCore/collector/handles/LocalScope.h \
Source/JavaScriptCore/config.h \
Source/JavaScriptCore/debugger/DebuggerActivation.cpp \
Source/JavaScriptCore/debugger/DebuggerActivation.h \
@@ -468,6 +472,7 @@ javascriptcore_sources += \
Source/JavaScriptCore/wtf/HashTable.cpp \
Source/JavaScriptCore/wtf/HashTable.h \
Source/JavaScriptCore/wtf/HashTraits.h \
+ Source/JavaScriptCore/wtf/HexNumber.h \
Source/JavaScriptCore/wtf/ListHashSet.h \
Source/JavaScriptCore/wtf/ListRefPtr.h \
Source/JavaScriptCore/wtf/Locker.h \
@@ -549,7 +554,7 @@ javascriptcore_sources += \
Source/JavaScriptCore/wtf/Threading.h \
Source/JavaScriptCore/wtf/ThreadingPrimitives.h \
Source/JavaScriptCore/wtf/ThreadingPthreads.cpp \
- Source/JavaScriptCore/wtf/ThreadSafeShared.h \
+ Source/JavaScriptCore/wtf/ThreadSafeRefCounted.h \
Source/JavaScriptCore/wtf/ThreadSpecific.h \
Source/JavaScriptCore/wtf/TypeTraits.cpp \
Source/JavaScriptCore/wtf/TypeTraits.h \
View
27 Source/JavaScriptCore/JavaScriptCore.exp
@@ -1,4 +1,3 @@
-__ZN3JSC22objectConstructorTableE
_JSCheckScriptSyntax
_JSClassCreate
_JSClassRelease
@@ -114,15 +113,15 @@ __ZN3JSC10JSFunction6s_infoE
__ZN3JSC10throwErrorEPNS_9ExecStateENS_7JSValueE
__ZN3JSC10throwErrorEPNS_9ExecStateEPNS_8JSObjectE
__ZN3JSC11JSByteArray13s_defaultInfoE
-__ZN3JSC11JSByteArray15createStructureENS_7JSValueEPKNS_9ClassInfoE
+__ZN3JSC11JSByteArray15createStructureERNS_12JSGlobalDataENS_7JSValueEPKNS_9ClassInfoE
__ZN3JSC11JSByteArrayC1EPNS_9ExecStateEN3WTF17NonNullPassRefPtrINS_9StructureEEEPNS3_9ByteArrayE
__ZN3JSC11MarkedSpace21allocateFromSizeClassERNS0_9SizeClassE
__ZN3JSC11ParserArena5resetEv
__ZN3JSC11checkSyntaxEPNS_9ExecStateERKNS_10SourceCodeE
__ZN3JSC11createErrorEPNS_9ExecStateERKNS_7UStringE
+__ZN3JSC11regExpFlagsERKNS_7UStringE
__ZN3JSC12DateInstance6s_infoE
__ZN3JSC12DateInstanceC1EPNS_9ExecStateEN3WTF17NonNullPassRefPtrINS_9StructureEEEd
-__ZN3JSC12DateInstanceC1EPNS_9ExecStateEd
__ZN3JSC12JSGlobalData10ClientDataD2Ev
__ZN3JSC12JSGlobalData11jsArrayVPtrE
__ZN3JSC12JSGlobalData12createLeakedENS_15ThreadStackTypeE
@@ -159,11 +158,11 @@ __ZN3JSC14JSGlobalObject12defineGetterEPNS_9ExecStateERKNS_10IdentifierEPNS_8JSO
__ZN3JSC14JSGlobalObject12defineSetterEPNS_9ExecStateERKNS_10IdentifierEPNS_8JSObjectEj
__ZN3JSC14JSGlobalObject12markChildrenERNS_9MarkStackE
__ZN3JSC14JSGlobalObject17putWithAttributesEPNS_9ExecStateERKNS_10IdentifierENS_7JSValueEj
-__ZN3JSC14JSGlobalObject25destroyJSGlobalObjectDataEPv
__ZN3JSC14JSGlobalObject3putEPNS_9ExecStateERKNS_10IdentifierENS_7JSValueERNS_15PutPropertySlotE
__ZN3JSC14JSGlobalObject4initEPNS_8JSObjectE
__ZN3JSC14JSGlobalObjectD2Ev
__ZN3JSC14JSGlobalObjectnwEmPNS_12JSGlobalDataE
+__ZN3JSC14MachineThreads16addCurrentThreadEv
__ZN3JSC14SamplingThread4stopEv
__ZN3JSC14SamplingThread5startEj
__ZN3JSC14TimeoutChecker10didTimeOutEPNS_9ExecStateE
@@ -182,10 +181,9 @@ __ZN3JSC16createRangeErrorEPNS_9ExecStateERKNS_7UStringE
__ZN3JSC16throwSyntaxErrorEPNS_9ExecStateE
__ZN3JSC17BytecodeGenerator21setDumpsGeneratedCodeEb
__ZN3JSC17PropertyNameArray3addEPN3WTF10StringImplE
-__ZN3JSC17constructFunctionEPNS_9ExecStateERKNS_7ArgListERKNS_10IdentifierERKNS_7UStringEi
+__ZN3JSC17constructFunctionEPNS_9ExecStateEPNS_14JSGlobalObjectERKNS_7ArgListERKNS_10IdentifierERKNS_7UStringEi
__ZN3JSC17createSyntaxErrorEPNS_9ExecStateERKNS_7UStringE
__ZN3JSC18DebuggerActivationC1ERNS_12JSGlobalDataEPNS_8JSObjectE
-__ZN3JSC18MachineStackMarker14registerThreadEv
__ZN3JSC18PropertyDescriptor11setWritableEb
__ZN3JSC18PropertyDescriptor12setUndefinedEv
__ZN3JSC18PropertyDescriptor13setDescriptorENS_7JSValueEj
@@ -201,13 +199,13 @@ __ZN3JSC19initializeThreadingEv
__ZN3JSC20MarkedArgumentBuffer10slowAppendENS_7JSValueE
__ZN3JSC20createReferenceErrorEPNS_9ExecStateERKNS_7UStringE
__ZN3JSC22globalMemoryStatisticsEv
+__ZN3JSC22objectConstructorTableE
__ZN3JSC23AbstractSamplingCounter4dumpEv
__ZN3JSC23objectProtoFuncToStringEPNS_9ExecStateE
__ZN3JSC23setUpStaticFunctionSlotEPNS_9ExecStateEPKNS_9HashEntryEPNS_8JSObjectERKNS_10IdentifierERNS_12PropertySlotE
-__ZN3JSC24DynamicGlobalObjectScopeC1EPNS_9ExecStateEPNS_14JSGlobalObjectE
+__ZN3JSC24DynamicGlobalObjectScopeC1ERNS_12JSGlobalDataEPNS_14JSGlobalObjectE
__ZN3JSC24JSObjectWithGlobalObjectC2EPNS_14JSGlobalObjectEN3WTF17NonNullPassRefPtrINS_9StructureEEE
__ZN3JSC24createStackOverflowErrorEPNS_9ExecStateE
-__ZN3JSC24createStackOverflowErrorEPNS_9ExecStateE
__ZN3JSC25evaluateInGlobalCallFrameERKNS_7UStringERNS_7JSValueEPNS_14JSGlobalObjectE
__ZN3JSC35createInterruptedExecutionExceptionEPNS_12JSGlobalDataE
__ZN3JSC3NaNE
@@ -248,7 +246,7 @@ __ZN3JSC6JSLock4lockENS_14JSLockBehaviorE
__ZN3JSC6JSLock6unlockENS_14JSLockBehaviorE
__ZN3JSC6JSLock9lockCountEv
__ZN3JSC6JSLockC1EPNS_9ExecStateE
-__ZN3JSC6RegExp6createEPNS_12JSGlobalDataERKNS_7UStringES5_
+__ZN3JSC6RegExp6createEPNS_12JSGlobalDataERKNS_7UStringENS_11RegExpFlagsE
__ZN3JSC6RegExpD1Ev
__ZN3JSC7JSArray12markChildrenERNS_9MarkStackE
__ZN3JSC7JSArray15setSubclassDataEPv
@@ -287,7 +285,6 @@ __ZN3JSC8JSObject14deletePropertyEPNS_9ExecStateERKNS_10IdentifierE
__ZN3JSC8JSObject14deletePropertyEPNS_9ExecStateEj
__ZN3JSC8JSObject15unwrappedObjectEv
__ZN3JSC8JSObject16getPropertyNamesEPNS_9ExecStateERNS_17PropertyNameArrayENS_15EnumerationModeE
-__ZN3JSC8JSObject17createInheritorIDEv
__ZN3JSC8JSObject17defineOwnPropertyEPNS_9ExecStateERKNS_10IdentifierERNS_18PropertyDescriptorEb
__ZN3JSC8JSObject17putDirectFunctionEPNS_9ExecStateEPNS_10JSFunctionEj
__ZN3JSC8JSObject17putDirectFunctionEPNS_9ExecStateEPNS_16InternalFunctionEj
@@ -387,6 +384,7 @@ __ZN3WTF12createThreadEPFPvS0_ES0_PKc
__ZN3WTF12detachThreadEj
__ZN3WTF12isMainThreadEv
__ZN3WTF12randomNumberEv
+__ZN3WTF13StringBuilder15reserveCapacityEj
__ZN3WTF13StringBuilder11reifyStringEv
__ZN3WTF13StringBuilder11shrinkToFitEv
__ZN3WTF13StringBuilder6appendEPKcj
@@ -431,6 +429,7 @@ __ZN3WTF21RefCountedLeakCounter9incrementEv
__ZN3WTF21RefCountedLeakCounterC1EPKc
__ZN3WTF21RefCountedLeakCounterD1Ev
__ZN3WTF21charactersToIntStrictEPKtmPbi
+__ZN3WTF22cancelCallOnMainThreadEPFvPvES0_
__ZN3WTF22charactersToUIntStrictEPKtmPbi
__ZN3WTF23callOnMainThreadAndWaitEPFvPvES0_
__ZN3WTF23dayInMonthFromDayInYearEib
@@ -446,10 +445,10 @@ __ZN3WTF39initializeMainThreadToProcessMainThreadEv
__ZN3WTF3MD58addBytesEPKhm
__ZN3WTF3MD58checksumERNS_6VectorIhLm16EEE
__ZN3WTF3MD5C1Ev
-__ZN3WTF4dtoaEPcdRbRiRj
__ZN3WTF4SHA111computeHashERNS_6VectorIhLm20EEE
__ZN3WTF4SHA18addBytesEPKhm
__ZN3WTF4SHA1C1Ev
+__ZN3WTF4dtoaEPcdRbRiRj
__ZN3WTF5Mutex4lockEv
__ZN3WTF5Mutex6unlockEv
__ZN3WTF5Mutex7tryLockEv
@@ -535,15 +534,15 @@ __ZNK3JSC6JSCell11toPrimitiveEPNS_9ExecStateENS_22PreferredPrimitiveTypeE
__ZNK3JSC6JSCell12toThisObjectEPNS_9ExecStateE
__ZNK3JSC6JSCell14isGetterSetterEv
__ZNK3JSC6JSCell8toNumberEPNS_9ExecStateE
-__ZNK3JSC6JSCell8toObjectEPNS_9ExecStateE
+__ZNK3JSC6JSCell8toObjectEPNS_9ExecStateEPNS_14JSGlobalObjectE
__ZNK3JSC6JSCell8toStringEPNS_9ExecStateE
__ZNK3JSC6JSCell9getStringEPNS_9ExecStateE
__ZNK3JSC6JSCell9getStringEPNS_9ExecStateERNS_7UStringE
__ZNK3JSC6JSCell9getUInt32ERj
__ZNK3JSC6JSCell9toBooleanEPNS_9ExecStateE
__ZNK3JSC7ArgList8getSliceEiRS0_
__ZNK3JSC7JSArray12subclassDataEv
-__ZNK3JSC7JSValue16toObjectSlowCaseEPNS_9ExecStateE
+__ZNK3JSC7JSValue16toObjectSlowCaseEPNS_9ExecStateEPNS_14JSGlobalObjectE
__ZNK3JSC7JSValue19synthesizePrototypeEPNS_9ExecStateE
__ZNK3JSC7JSValue20toThisObjectSlowCaseEPNS_9ExecStateE
__ZNK3JSC7JSValue9toIntegerEPNS_9ExecStateE
@@ -556,7 +555,7 @@ __ZNK3JSC8JSObject12defaultValueEPNS_9ExecStateENS_22PreferredPrimitiveTypeE
__ZNK3JSC8JSObject12toThisObjectEPNS_9ExecStateE
__ZNK3JSC8JSObject18toStrictThisObjectEPNS_9ExecStateE
__ZNK3JSC8JSObject8toNumberEPNS_9ExecStateE
-__ZNK3JSC8JSObject8toObjectEPNS_9ExecStateE
+__ZNK3JSC8JSObject8toObjectEPNS_9ExecStateEPNS_14JSGlobalObjectE
__ZNK3JSC8JSObject8toStringEPNS_9ExecStateE
__ZNK3JSC8JSObject9classNameEv
__ZNK3JSC8JSObject9toBooleanEPNS_9ExecStateE
View
61 Source/JavaScriptCore/JavaScriptCore.gypi
@@ -1,5 +1,6 @@
{
'variables': {
+ 'project_dir': ['.'],
# These headers are part of JavaScriptCore's public API in the Apple Mac build.
'javascriptcore_publicheader_files': [
'API/JSBase.h',
@@ -29,6 +30,9 @@
'collector/handles/Global.h',
'collector/handles/Handle.h',
'collector/handles/HandleHeap.h',
+ 'collector/handles/HandleStack.h',
+ 'collector/handles/Local.h',
+ 'collector/handles/LocalScope.h',
'config.h',
'debugger/Debugger.h',
'debugger/DebuggerActivation.h',
@@ -64,6 +68,7 @@
'runtime/ExceptionHelpers.h',
'runtime/FunctionConstructor.h',
'runtime/FunctionPrototype.h',
+ 'runtime/GCActivityCallback.h',
'runtime/Heap.h',
'runtime/Identifier.h',
'runtime/InitializeThreading.h',
@@ -105,7 +110,9 @@
'runtime/Protect.h',
'runtime/PutPropertySlot.h',
'runtime/RegExp.h',
+ 'runtime/RegExpKey.h',
'runtime/RegExpCache.h',
+ 'runtime/RegExpObject.h',
'runtime/RopeImpl.h',
'runtime/ScopeChain.h',
'runtime/SmallStrings.h',
@@ -157,6 +164,7 @@
'wtf/HashSet.h',
'wtf/HashTable.h',
'wtf/HashTraits.h',
+ 'wtf/HexNumber.h',
'wtf/ListHashSet.h',
'wtf/ListRefPtr.h',
'wtf/Locker.h',
@@ -195,7 +203,7 @@
'wtf/StdLibExtras.h',
'wtf/StringExtras.h',
'wtf/StringHasher.h',
- 'wtf/ThreadSafeShared.h',
+ 'wtf/ThreadSafeRefCounted.h',
'wtf/ThreadSpecific.h',
'wtf/Threading.h',
'wtf/ThreadingPrimitives.h',
@@ -303,9 +311,29 @@
'bytecompiler/NodesCodegen.cpp',
'bytecompiler/RegisterID.h',
'collector/handles/HandleHeap.cpp',
+ 'collector/handles/HandleStack.cpp',
'debugger/Debugger.cpp',
'debugger/DebuggerActivation.cpp',
'debugger/DebuggerCallFrame.cpp',
+ 'dfg/DFGAliasTracker.h',
+ 'dfg/DFGByteCodeParser.cpp',
+ 'dfg/DFGByteCodeParser.h',
+ 'dfg/DFGGenerationInfo.h',
+ 'dfg/DFGGraph.cpp',
+ 'dfg/DFGGraph.h',
+ 'dfg/DFGJITCodeGenerator.cpp',
+ 'dfg/DFGJITCodeGenerator.h',
+ 'dfg/DFGJITCompiler.cpp',
+ 'dfg/DFGJITCompiler.h',
+ 'dfg/DFGNode.h',
+ 'dfg/DFGNonSpeculativeJIT.cpp',
+ 'dfg/DFGNonSpeculativeJIT.h',
+ 'dfg/DFGOperations.cpp',
+ 'dfg/DFGOperations.h',
+ 'dfg/DFGRegisterBank.h',
+ 'dfg/DFGScoreBoard.h',
+ 'dfg/DFGSpeculativeJIT.cpp',
+ 'dfg/DFGSpeculativeJIT.h',
'icu/unicode/parseerr.h',
'icu/unicode/platform.h',
'icu/unicode/putil.h',
@@ -351,6 +379,10 @@
'jit/JSInterfaceJIT.h',
'jit/SpecializedThunkJIT.h',
'jit/ThunkGenerators.cpp',
+ 'os-win32/WinMain.cpp',
+ 'os-win32/inttypes.h',
+ 'os-win32/stdbool.h',
+ 'os-win32/stdint.h',
'parser/ASTBuilder.h',
'parser/JSParser.cpp',
'parser/JSParser.h',
@@ -447,7 +479,6 @@
'runtime/FunctionConstructor.cpp',
'runtime/FunctionPrototype.cpp',
'runtime/GCActivityCallback.cpp',
- 'runtime/GCActivityCallback.h',
'runtime/GCActivityCallbackCF.cpp',
'runtime/GetterSetter.cpp',
'runtime/GetterSetter.h',
@@ -517,10 +548,8 @@
'runtime/RegExpCache.cpp',
'runtime/RegExpConstructor.cpp',
'runtime/RegExpConstructor.h',
- 'runtime/RegExpKey.h',
'runtime/RegExpMatchesArray.h',
'runtime/RegExpObject.cpp',
- 'runtime/RegExpObject.h',
'runtime/RegExpPrototype.cpp',
'runtime/RegExpPrototype.h',
'runtime/RopeImpl.cpp',
@@ -538,6 +567,7 @@
'runtime/Structure.cpp',
'runtime/StructureChain.cpp',
'runtime/TimeoutChecker.cpp',
+ 'runtime/Tracing.d',
'runtime/Tracing.h',