therubyracer 0.8.1.pre2 → 0.8.1

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of therubyracer might be problematic. Click here for more details.

Files changed (877) hide show
  1. data/Changelog.md +2 -1
  2. data/README.md +6 -3
  3. data/ext/v8/upstream/3.1.8/.gitignore +31 -0
  4. data/ext/v8/upstream/3.1.8/AUTHORS +40 -0
  5. data/ext/v8/upstream/3.1.8/ChangeLog +2566 -0
  6. data/ext/v8/upstream/3.1.8/LICENSE +52 -0
  7. data/ext/v8/upstream/3.1.8/LICENSE.strongtalk +29 -0
  8. data/ext/v8/upstream/3.1.8/LICENSE.v8 +26 -0
  9. data/ext/v8/upstream/3.1.8/LICENSE.valgrind +45 -0
  10. data/ext/v8/upstream/3.1.8/SConstruct +1192 -0
  11. data/ext/v8/upstream/3.1.8/build/README.txt +25 -0
  12. data/ext/v8/upstream/3.1.8/build/all.gyp +18 -0
  13. data/ext/v8/upstream/3.1.8/build/armu.gypi +32 -0
  14. data/ext/v8/upstream/3.1.8/build/common.gypi +82 -0
  15. data/ext/v8/upstream/3.1.8/build/gyp_v8 +145 -0
  16. data/ext/v8/upstream/3.1.8/include/v8-debug.h +384 -0
  17. data/ext/v8/upstream/3.1.8/include/v8-preparser.h +116 -0
  18. data/ext/v8/upstream/3.1.8/include/v8-profiler.h +426 -0
  19. data/ext/v8/upstream/3.1.8/include/v8-testing.h +99 -0
  20. data/ext/v8/upstream/3.1.8/include/v8.h +3846 -0
  21. data/ext/v8/upstream/3.1.8/include/v8stdint.h +53 -0
  22. data/ext/v8/upstream/3.1.8/preparser/preparser-process.cc +206 -0
  23. data/ext/v8/upstream/3.1.8/src/SConscript +356 -0
  24. data/ext/v8/upstream/3.1.8/src/accessors.cc +907 -0
  25. data/ext/v8/upstream/3.1.8/src/accessors.h +121 -0
  26. data/ext/v8/upstream/3.1.8/src/allocation.cc +204 -0
  27. data/ext/v8/upstream/3.1.8/src/allocation.h +176 -0
  28. data/ext/v8/upstream/3.1.8/src/api.cc +5191 -0
  29. data/ext/v8/upstream/3.1.8/src/api.h +508 -0
  30. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/apinatives.js +0 -0
  31. data/ext/v8/upstream/3.1.8/src/apiutils.h +80 -0
  32. data/ext/v8/upstream/3.1.8/src/arguments.h +105 -0
  33. data/ext/v8/upstream/3.1.8/src/arm/assembler-arm-inl.h +352 -0
  34. data/ext/v8/upstream/3.1.8/src/arm/assembler-arm.cc +2756 -0
  35. data/ext/v8/upstream/3.1.8/src/arm/assembler-arm.h +1294 -0
  36. data/ext/v8/upstream/3.1.8/src/arm/builtins-arm.cc +1628 -0
  37. data/ext/v8/upstream/3.1.8/src/arm/code-stubs-arm.cc +6783 -0
  38. data/ext/v8/upstream/3.1.8/src/arm/code-stubs-arm.h +657 -0
  39. data/ext/v8/upstream/3.1.8/src/arm/codegen-arm-inl.h +48 -0
  40. data/ext/v8/upstream/3.1.8/src/arm/codegen-arm.cc +7403 -0
  41. data/ext/v8/upstream/3.1.8/src/arm/codegen-arm.h +595 -0
  42. data/ext/v8/upstream/3.1.8/src/arm/constants-arm.cc +152 -0
  43. data/ext/v8/upstream/3.1.8/src/arm/constants-arm.h +769 -0
  44. data/ext/v8/upstream/3.1.8/src/arm/cpu-arm.cc +147 -0
  45. data/ext/v8/upstream/3.1.8/src/arm/debug-arm.cc +315 -0
  46. data/ext/v8/upstream/3.1.8/src/arm/deoptimizer-arm.cc +700 -0
  47. data/ext/v8/upstream/3.1.8/src/arm/disasm-arm.cc +1439 -0
  48. data/ext/v8/upstream/3.1.8/src/arm/frames-arm.cc +45 -0
  49. data/ext/v8/upstream/3.1.8/src/arm/frames-arm.h +168 -0
  50. data/ext/v8/upstream/3.1.8/src/arm/full-codegen-arm.cc +4230 -0
  51. data/ext/v8/upstream/3.1.8/src/arm/ic-arm.cc +1799 -0
  52. data/ext/v8/upstream/3.1.8/src/arm/jump-target-arm.cc +174 -0
  53. data/ext/v8/upstream/3.1.8/src/arm/lithium-arm.cc +2041 -0
  54. data/ext/v8/upstream/3.1.8/src/arm/lithium-arm.h +2046 -0
  55. data/ext/v8/upstream/3.1.8/src/arm/lithium-codegen-arm.cc +3822 -0
  56. data/ext/v8/upstream/3.1.8/src/arm/lithium-codegen-arm.h +312 -0
  57. data/ext/v8/upstream/3.1.8/src/arm/lithium-gap-resolver-arm.cc +303 -0
  58. data/ext/v8/upstream/3.1.8/src/arm/lithium-gap-resolver-arm.h +84 -0
  59. data/ext/v8/upstream/3.1.8/src/arm/macro-assembler-arm.cc +2701 -0
  60. data/ext/v8/upstream/3.1.8/src/arm/macro-assembler-arm.h +1015 -0
  61. data/ext/v8/upstream/3.1.8/src/arm/regexp-macro-assembler-arm.cc +1280 -0
  62. data/ext/v8/upstream/3.1.8/src/arm/regexp-macro-assembler-arm.h +252 -0
  63. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/arm/register-allocator-arm-inl.h +0 -0
  64. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/arm/register-allocator-arm.cc +0 -0
  65. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/arm/register-allocator-arm.h +0 -0
  66. data/ext/v8/upstream/3.1.8/src/arm/simulator-arm.cc +3165 -0
  67. data/ext/v8/upstream/3.1.8/src/arm/simulator-arm.h +402 -0
  68. data/ext/v8/upstream/3.1.8/src/arm/stub-cache-arm.cc +4077 -0
  69. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/arm/virtual-frame-arm-inl.h +0 -0
  70. data/ext/v8/upstream/3.1.8/src/arm/virtual-frame-arm.cc +843 -0
  71. data/ext/v8/upstream/3.1.8/src/arm/virtual-frame-arm.h +520 -0
  72. data/ext/v8/upstream/3.1.8/src/array.js +1231 -0
  73. data/ext/v8/upstream/3.1.8/src/assembler.cc +973 -0
  74. data/ext/v8/upstream/3.1.8/src/assembler.h +787 -0
  75. data/ext/v8/upstream/3.1.8/src/ast-inl.h +107 -0
  76. data/ext/v8/upstream/3.1.8/src/ast.cc +1067 -0
  77. data/ext/v8/upstream/3.1.8/src/ast.h +2177 -0
  78. data/ext/v8/upstream/3.1.8/src/atomicops.h +165 -0
  79. data/ext/v8/upstream/3.1.8/src/atomicops_internals_arm_gcc.h +145 -0
  80. data/ext/v8/upstream/3.1.8/src/atomicops_internals_x86_gcc.cc +126 -0
  81. data/ext/v8/upstream/3.1.8/src/atomicops_internals_x86_gcc.h +287 -0
  82. data/ext/v8/upstream/3.1.8/src/atomicops_internals_x86_macosx.h +301 -0
  83. data/ext/v8/upstream/3.1.8/src/atomicops_internals_x86_msvc.h +203 -0
  84. data/ext/v8/upstream/3.1.8/src/bignum-dtoa.cc +655 -0
  85. data/ext/v8/upstream/3.1.8/src/bignum-dtoa.h +81 -0
  86. data/ext/v8/upstream/3.1.8/src/bignum.cc +768 -0
  87. data/ext/v8/upstream/3.1.8/src/bignum.h +140 -0
  88. data/ext/v8/upstream/3.1.8/src/bootstrapper.cc +1888 -0
  89. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/bootstrapper.h +0 -0
  90. data/ext/v8/upstream/3.1.8/src/builtins.cc +1586 -0
  91. data/ext/v8/upstream/3.1.8/src/builtins.h +339 -0
  92. data/ext/v8/upstream/3.1.8/src/bytecodes-irregexp.h +105 -0
  93. data/ext/v8/upstream/3.1.8/src/cached-powers.cc +177 -0
  94. data/ext/v8/upstream/3.1.8/src/cached-powers.h +65 -0
  95. data/ext/v8/upstream/3.1.8/src/char-predicates-inl.h +94 -0
  96. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/char-predicates.h +0 -0
  97. data/ext/v8/upstream/3.1.8/src/checks.cc +110 -0
  98. data/ext/v8/upstream/3.1.8/src/checks.h +292 -0
  99. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/circular-queue-inl.h +0 -0
  100. data/ext/v8/upstream/3.1.8/src/circular-queue.cc +122 -0
  101. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/circular-queue.h +0 -0
  102. data/ext/v8/upstream/3.1.8/src/code-stubs.cc +230 -0
  103. data/ext/v8/upstream/3.1.8/src/code-stubs.h +950 -0
  104. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/code.h +0 -0
  105. data/ext/v8/upstream/3.1.8/src/codegen-inl.h +64 -0
  106. data/ext/v8/upstream/3.1.8/src/codegen.cc +495 -0
  107. data/ext/v8/upstream/3.1.8/src/codegen.h +245 -0
  108. data/ext/v8/upstream/3.1.8/src/compilation-cache.cc +654 -0
  109. data/ext/v8/upstream/3.1.8/src/compilation-cache.h +112 -0
  110. data/ext/v8/upstream/3.1.8/src/compiler.cc +806 -0
  111. data/ext/v8/upstream/3.1.8/src/compiler.h +290 -0
  112. data/ext/v8/upstream/3.1.8/src/contexts.cc +320 -0
  113. data/ext/v8/upstream/3.1.8/src/contexts.h +376 -0
  114. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/conversions-inl.h +0 -0
  115. data/ext/v8/upstream/3.1.8/src/conversions.cc +1069 -0
  116. data/ext/v8/upstream/3.1.8/src/conversions.h +122 -0
  117. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/counters.cc +0 -0
  118. data/ext/v8/upstream/3.1.8/src/counters.h +242 -0
  119. data/ext/v8/upstream/3.1.8/src/cpu-profiler-inl.h +100 -0
  120. data/ext/v8/upstream/3.1.8/src/cpu-profiler.cc +554 -0
  121. data/ext/v8/upstream/3.1.8/src/cpu-profiler.h +291 -0
  122. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/cpu.h +0 -0
  123. data/ext/v8/upstream/3.1.8/src/d8-debug.cc +367 -0
  124. data/ext/v8/upstream/3.1.8/src/d8-debug.h +157 -0
  125. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/d8-posix.cc +0 -0
  126. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/d8-readline.cc +0 -0
  127. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/d8-windows.cc +0 -0
  128. data/ext/v8/upstream/3.1.8/src/d8.cc +792 -0
  129. data/ext/v8/upstream/3.1.8/src/d8.gyp +85 -0
  130. data/ext/v8/upstream/3.1.8/src/d8.h +231 -0
  131. data/ext/v8/upstream/3.1.8/src/d8.js +2798 -0
  132. data/ext/v8/upstream/3.1.8/src/data-flow.cc +545 -0
  133. data/ext/v8/upstream/3.1.8/src/data-flow.h +379 -0
  134. data/ext/v8/upstream/3.1.8/src/date.js +1103 -0
  135. data/ext/v8/upstream/3.1.8/src/dateparser-inl.h +125 -0
  136. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/dateparser.cc +0 -0
  137. data/ext/v8/upstream/3.1.8/src/dateparser.h +263 -0
  138. data/ext/v8/upstream/3.1.8/src/debug-agent.cc +446 -0
  139. data/ext/v8/upstream/3.1.8/src/debug-agent.h +131 -0
  140. data/ext/v8/upstream/3.1.8/src/debug-debugger.js +2569 -0
  141. data/ext/v8/upstream/3.1.8/src/debug.cc +3085 -0
  142. data/ext/v8/upstream/3.1.8/src/debug.h +1025 -0
  143. data/ext/v8/upstream/3.1.8/src/deoptimizer.cc +1185 -0
  144. data/ext/v8/upstream/3.1.8/src/deoptimizer.h +529 -0
  145. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/disasm.h +0 -0
  146. data/ext/v8/upstream/3.1.8/src/disassembler.cc +338 -0
  147. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/disassembler.h +0 -0
  148. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/diy-fp.cc +0 -0
  149. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/diy-fp.h +0 -0
  150. data/ext/v8/upstream/3.1.8/src/double.h +238 -0
  151. data/ext/v8/upstream/3.1.8/src/dtoa.cc +103 -0
  152. data/ext/v8/upstream/3.1.8/src/dtoa.h +85 -0
  153. data/ext/v8/upstream/3.1.8/src/execution.cc +735 -0
  154. data/ext/v8/upstream/3.1.8/src/execution.h +322 -0
  155. data/ext/v8/upstream/3.1.8/src/extensions/experimental/experimental.gyp +53 -0
  156. data/ext/v8/upstream/3.1.8/src/extensions/experimental/i18n-extension.cc +264 -0
  157. data/ext/v8/upstream/3.1.8/src/extensions/experimental/i18n-extension.h +64 -0
  158. data/ext/v8/upstream/3.1.8/src/extensions/externalize-string-extension.cc +141 -0
  159. data/ext/v8/upstream/3.1.8/src/extensions/externalize-string-extension.h +50 -0
  160. data/ext/v8/upstream/3.1.8/src/extensions/gc-extension.cc +58 -0
  161. data/ext/v8/upstream/3.1.8/src/extensions/gc-extension.h +49 -0
  162. data/ext/v8/upstream/3.1.8/src/factory.cc +1087 -0
  163. data/ext/v8/upstream/3.1.8/src/factory.h +432 -0
  164. data/ext/v8/upstream/3.1.8/src/fast-dtoa.cc +736 -0
  165. data/ext/v8/upstream/3.1.8/src/fast-dtoa.h +83 -0
  166. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/fixed-dtoa.cc +0 -0
  167. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/fixed-dtoa.h +0 -0
  168. data/ext/v8/upstream/3.1.8/src/flag-definitions.h +552 -0
  169. data/ext/v8/upstream/3.1.8/src/flags.cc +551 -0
  170. data/ext/v8/upstream/3.1.8/src/flags.h +79 -0
  171. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/frame-element.cc +0 -0
  172. data/ext/v8/upstream/3.1.8/src/frame-element.h +277 -0
  173. data/ext/v8/upstream/3.1.8/src/frames-inl.h +210 -0
  174. data/ext/v8/upstream/3.1.8/src/frames.cc +1232 -0
  175. data/ext/v8/upstream/3.1.8/src/frames.h +826 -0
  176. data/ext/v8/upstream/3.1.8/src/full-codegen.cc +1382 -0
  177. data/ext/v8/upstream/3.1.8/src/full-codegen.h +751 -0
  178. data/ext/v8/upstream/3.1.8/src/func-name-inferrer.cc +90 -0
  179. data/ext/v8/upstream/3.1.8/src/func-name-inferrer.h +111 -0
  180. data/ext/v8/upstream/3.1.8/src/gdb-jit.cc +1547 -0
  181. data/ext/v8/upstream/3.1.8/src/gdb-jit.h +138 -0
  182. data/ext/v8/upstream/3.1.8/src/global-handles.cc +534 -0
  183. data/ext/v8/upstream/3.1.8/src/global-handles.h +181 -0
  184. data/ext/v8/upstream/3.1.8/src/globals.h +325 -0
  185. data/ext/v8/upstream/3.1.8/src/handles-inl.h +80 -0
  186. data/ext/v8/upstream/3.1.8/src/handles.cc +910 -0
  187. data/ext/v8/upstream/3.1.8/src/handles.h +424 -0
  188. data/ext/v8/upstream/3.1.8/src/hashmap.cc +230 -0
  189. data/ext/v8/upstream/3.1.8/src/hashmap.h +121 -0
  190. data/ext/v8/upstream/3.1.8/src/heap-inl.h +587 -0
  191. data/ext/v8/upstream/3.1.8/src/heap-profiler.cc +1128 -0
  192. data/ext/v8/upstream/3.1.8/src/heap-profiler.h +381 -0
  193. data/ext/v8/upstream/3.1.8/src/heap.cc +5610 -0
  194. data/ext/v8/upstream/3.1.8/src/heap.h +2218 -0
  195. data/ext/v8/upstream/3.1.8/src/hydrogen-instructions.cc +1490 -0
  196. data/ext/v8/upstream/3.1.8/src/hydrogen-instructions.h +3493 -0
  197. data/ext/v8/upstream/3.1.8/src/hydrogen.cc +6056 -0
  198. data/ext/v8/upstream/3.1.8/src/hydrogen.h +1091 -0
  199. data/ext/v8/upstream/3.1.8/src/ia32/assembler-ia32-inl.h +429 -0
  200. data/ext/v8/upstream/3.1.8/src/ia32/assembler-ia32.cc +2800 -0
  201. data/ext/v8/upstream/3.1.8/src/ia32/assembler-ia32.h +1093 -0
  202. data/ext/v8/upstream/3.1.8/src/ia32/builtins-ia32.cc +1590 -0
  203. data/ext/v8/upstream/3.1.8/src/ia32/code-stubs-ia32.cc +6624 -0
  204. data/ext/v8/upstream/3.1.8/src/ia32/code-stubs-ia32.h +536 -0
  205. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/ia32/codegen-ia32-inl.h +0 -0
  206. data/ext/v8/upstream/3.1.8/src/ia32/codegen-ia32.cc +10354 -0
  207. data/ext/v8/upstream/3.1.8/src/ia32/codegen-ia32.h +798 -0
  208. data/ext/v8/upstream/3.1.8/src/ia32/cpu-ia32.cc +87 -0
  209. data/ext/v8/upstream/3.1.8/src/ia32/debug-ia32.cc +309 -0
  210. data/ext/v8/upstream/3.1.8/src/ia32/deoptimizer-ia32.cc +664 -0
  211. data/ext/v8/upstream/3.1.8/src/ia32/disasm-ia32.cc +1597 -0
  212. data/ext/v8/upstream/3.1.8/src/ia32/frames-ia32.cc +45 -0
  213. data/ext/v8/upstream/3.1.8/src/ia32/frames-ia32.h +140 -0
  214. data/ext/v8/upstream/3.1.8/src/ia32/full-codegen-ia32.cc +4278 -0
  215. data/ext/v8/upstream/3.1.8/src/ia32/ic-ia32.cc +1786 -0
  216. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/ia32/jump-target-ia32.cc +0 -0
  217. data/ext/v8/upstream/3.1.8/src/ia32/lithium-codegen-ia32.cc +3880 -0
  218. data/ext/v8/upstream/3.1.8/src/ia32/lithium-codegen-ia32.h +309 -0
  219. data/ext/v8/upstream/3.1.8/src/ia32/lithium-gap-resolver-ia32.cc +460 -0
  220. data/ext/v8/upstream/3.1.8/src/ia32/lithium-gap-resolver-ia32.h +110 -0
  221. data/ext/v8/upstream/3.1.8/src/ia32/lithium-ia32.cc +2095 -0
  222. data/ext/v8/upstream/3.1.8/src/ia32/lithium-ia32.h +2127 -0
  223. data/ext/v8/upstream/3.1.8/src/ia32/macro-assembler-ia32.cc +2031 -0
  224. data/ext/v8/upstream/3.1.8/src/ia32/macro-assembler-ia32.h +798 -0
  225. data/ext/v8/upstream/3.1.8/src/ia32/regexp-macro-assembler-ia32.cc +1253 -0
  226. data/ext/v8/upstream/3.1.8/src/ia32/regexp-macro-assembler-ia32.h +215 -0
  227. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/ia32/register-allocator-ia32-inl.h +0 -0
  228. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/ia32/register-allocator-ia32.cc +0 -0
  229. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/ia32/register-allocator-ia32.h +0 -0
  230. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/ia32/simulator-ia32.cc +0 -0
  231. data/ext/v8/upstream/3.1.8/src/ia32/simulator-ia32.h +72 -0
  232. data/ext/v8/upstream/3.1.8/src/ia32/stub-cache-ia32.cc +3732 -0
  233. data/ext/v8/upstream/3.1.8/src/ia32/virtual-frame-ia32.cc +1360 -0
  234. data/ext/v8/upstream/3.1.8/src/ia32/virtual-frame-ia32.h +646 -0
  235. data/ext/v8/upstream/3.1.8/src/ic-inl.h +129 -0
  236. data/ext/v8/upstream/3.1.8/src/ic.cc +2333 -0
  237. data/ext/v8/upstream/3.1.8/src/ic.h +639 -0
  238. data/ext/v8/upstream/3.1.8/src/inspector.cc +63 -0
  239. data/ext/v8/upstream/3.1.8/src/inspector.h +62 -0
  240. data/ext/v8/upstream/3.1.8/src/interpreter-irregexp.cc +655 -0
  241. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/interpreter-irregexp.h +0 -0
  242. data/ext/v8/upstream/3.1.8/src/json.js +342 -0
  243. data/ext/v8/upstream/3.1.8/src/jsregexp.cc +5340 -0
  244. data/ext/v8/upstream/3.1.8/src/jsregexp.h +1484 -0
  245. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/jump-target-heavy-inl.h +0 -0
  246. data/ext/v8/upstream/3.1.8/src/jump-target-heavy.cc +430 -0
  247. data/ext/v8/upstream/3.1.8/src/jump-target-heavy.h +244 -0
  248. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/jump-target-inl.h +0 -0
  249. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/jump-target-light-inl.h +0 -0
  250. data/ext/v8/upstream/3.1.8/src/jump-target-light.cc +111 -0
  251. data/ext/v8/upstream/3.1.8/src/jump-target-light.h +193 -0
  252. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/jump-target.cc +0 -0
  253. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/jump-target.h +0 -0
  254. data/ext/v8/upstream/3.1.8/src/list-inl.h +206 -0
  255. data/ext/v8/upstream/3.1.8/src/list.h +164 -0
  256. data/ext/v8/upstream/3.1.8/src/lithium-allocator-inl.h +140 -0
  257. data/ext/v8/upstream/3.1.8/src/lithium-allocator.cc +2093 -0
  258. data/ext/v8/upstream/3.1.8/src/lithium-allocator.h +644 -0
  259. data/ext/v8/upstream/3.1.8/src/lithium.cc +168 -0
  260. data/ext/v8/upstream/3.1.8/src/lithium.h +592 -0
  261. data/ext/v8/upstream/3.1.8/src/liveedit-debugger.js +1082 -0
  262. data/ext/v8/upstream/3.1.8/src/liveedit.cc +1650 -0
  263. data/ext/v8/upstream/3.1.8/src/liveedit.h +174 -0
  264. data/ext/v8/upstream/3.1.8/src/liveobjectlist-inl.h +126 -0
  265. data/ext/v8/upstream/3.1.8/src/liveobjectlist.cc +2527 -0
  266. data/ext/v8/upstream/3.1.8/src/liveobjectlist.h +322 -0
  267. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/log-inl.h +0 -0
  268. data/ext/v8/upstream/3.1.8/src/log-utils.cc +336 -0
  269. data/ext/v8/upstream/3.1.8/src/log-utils.h +232 -0
  270. data/ext/v8/upstream/3.1.8/src/log.cc +1608 -0
  271. data/ext/v8/upstream/3.1.8/src/log.h +379 -0
  272. data/ext/v8/upstream/3.1.8/src/macro-assembler.h +120 -0
  273. data/ext/v8/upstream/3.1.8/src/macros.py +178 -0
  274. data/ext/v8/upstream/3.1.8/src/mark-compact.cc +2957 -0
  275. data/ext/v8/upstream/3.1.8/src/mark-compact.h +433 -0
  276. data/ext/v8/upstream/3.1.8/src/math.js +264 -0
  277. data/ext/v8/upstream/3.1.8/src/memory.h +82 -0
  278. data/ext/v8/upstream/3.1.8/src/messages.cc +164 -0
  279. data/ext/v8/upstream/3.1.8/src/messages.h +114 -0
  280. data/ext/v8/upstream/3.1.8/src/messages.js +1071 -0
  281. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/mips/assembler-mips-inl.h +0 -0
  282. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/mips/assembler-mips.cc +0 -0
  283. data/ext/v8/upstream/3.1.8/src/mips/assembler-mips.h +667 -0
  284. data/ext/v8/upstream/3.1.8/src/mips/builtins-mips.cc +205 -0
  285. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/mips/codegen-mips-inl.h +0 -0
  286. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/mips/codegen-mips.cc +0 -0
  287. data/ext/v8/upstream/3.1.8/src/mips/codegen-mips.h +431 -0
  288. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/mips/constants-mips.cc +0 -0
  289. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/mips/constants-mips.h +0 -0
  290. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/mips/cpu-mips.cc +0 -0
  291. data/ext/v8/upstream/3.1.8/src/mips/debug-mips.cc +127 -0
  292. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/mips/disasm-mips.cc +0 -0
  293. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/mips/fast-codegen-mips.cc +0 -0
  294. data/ext/v8/upstream/3.1.8/src/mips/frames-mips.cc +96 -0
  295. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/mips/frames-mips.h +0 -0
  296. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/mips/full-codegen-mips.cc +0 -0
  297. data/ext/v8/upstream/3.1.8/src/mips/ic-mips.cc +208 -0
  298. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/mips/jump-target-mips.cc +0 -0
  299. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/mips/macro-assembler-mips.cc +0 -0
  300. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/mips/macro-assembler-mips.h +0 -0
  301. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/mips/register-allocator-mips-inl.h +0 -0
  302. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/mips/register-allocator-mips.cc +0 -0
  303. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/mips/register-allocator-mips.h +0 -0
  304. data/ext/v8/upstream/3.1.8/src/mips/simulator-mips.cc +1650 -0
  305. data/ext/v8/upstream/3.1.8/src/mips/simulator-mips.h +311 -0
  306. data/ext/v8/upstream/3.1.8/src/mips/stub-cache-mips.cc +418 -0
  307. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/mips/virtual-frame-mips.cc +0 -0
  308. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/mips/virtual-frame-mips.h +0 -0
  309. data/ext/v8/upstream/3.1.8/src/mirror-debugger.js +2380 -0
  310. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/mksnapshot.cc +0 -0
  311. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/natives.h +0 -0
  312. data/ext/v8/upstream/3.1.8/src/objects-debug.cc +722 -0
  313. data/ext/v8/upstream/3.1.8/src/objects-inl.h +3946 -0
  314. data/ext/v8/upstream/3.1.8/src/objects-printer.cc +801 -0
  315. data/ext/v8/upstream/3.1.8/src/objects-visiting.cc +142 -0
  316. data/ext/v8/upstream/3.1.8/src/objects-visiting.h +401 -0
  317. data/ext/v8/upstream/3.1.8/src/objects.cc +10044 -0
  318. data/ext/v8/upstream/3.1.8/src/objects.h +6571 -0
  319. data/ext/v8/upstream/3.1.8/src/parser.cc +5165 -0
  320. data/ext/v8/upstream/3.1.8/src/parser.h +802 -0
  321. data/ext/v8/upstream/3.1.8/src/platform-cygwin.cc +745 -0
  322. data/ext/v8/upstream/3.1.8/src/platform-freebsd.cc +702 -0
  323. data/ext/v8/upstream/3.1.8/src/platform-linux.cc +981 -0
  324. data/ext/v8/upstream/3.1.8/src/platform-macos.cc +732 -0
  325. data/ext/v8/upstream/3.1.8/src/platform-nullos.cc +498 -0
  326. data/ext/v8/upstream/3.1.8/src/platform-openbsd.cc +657 -0
  327. data/ext/v8/upstream/3.1.8/src/platform-posix.cc +399 -0
  328. data/ext/v8/upstream/3.1.8/src/platform-solaris.cc +714 -0
  329. data/ext/v8/upstream/3.1.8/src/platform-win32.cc +1974 -0
  330. data/ext/v8/upstream/3.1.8/src/platform.h +636 -0
  331. data/ext/v8/upstream/3.1.8/src/preparse-data.cc +183 -0
  332. data/ext/v8/upstream/3.1.8/src/preparse-data.h +249 -0
  333. data/ext/v8/upstream/3.1.8/src/preparser-api.cc +213 -0
  334. data/ext/v8/upstream/3.1.8/src/preparser.cc +1205 -0
  335. data/ext/v8/upstream/3.1.8/src/preparser.h +278 -0
  336. data/ext/v8/upstream/3.1.8/src/prettyprinter.cc +1539 -0
  337. data/ext/v8/upstream/3.1.8/src/prettyprinter.h +223 -0
  338. data/ext/v8/upstream/3.1.8/src/profile-generator-inl.h +128 -0
  339. data/ext/v8/upstream/3.1.8/src/profile-generator.cc +2899 -0
  340. data/ext/v8/upstream/3.1.8/src/profile-generator.h +1151 -0
  341. data/ext/v8/upstream/3.1.8/src/property.cc +96 -0
  342. data/ext/v8/upstream/3.1.8/src/property.h +337 -0
  343. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/regexp-macro-assembler-irregexp-inl.h +0 -0
  344. data/ext/v8/upstream/3.1.8/src/regexp-macro-assembler-irregexp.cc +470 -0
  345. data/ext/v8/upstream/3.1.8/src/regexp-macro-assembler-irregexp.h +142 -0
  346. data/ext/v8/upstream/3.1.8/src/regexp-macro-assembler-tracer.cc +373 -0
  347. data/ext/v8/upstream/3.1.8/src/regexp-macro-assembler-tracer.h +104 -0
  348. data/ext/v8/upstream/3.1.8/src/regexp-macro-assembler.cc +257 -0
  349. data/ext/v8/upstream/3.1.8/src/regexp-macro-assembler.h +231 -0
  350. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/regexp-stack.cc +0 -0
  351. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/regexp-stack.h +0 -0
  352. data/ext/v8/upstream/3.1.8/src/regexp.js +483 -0
  353. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/register-allocator-inl.h +0 -0
  354. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/register-allocator.cc +0 -0
  355. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/register-allocator.h +0 -0
  356. data/ext/v8/upstream/3.1.8/src/rewriter.cc +1023 -0
  357. data/ext/v8/upstream/3.1.8/src/rewriter.h +59 -0
  358. data/ext/v8/upstream/3.1.8/src/runtime-profiler.cc +443 -0
  359. data/ext/v8/upstream/3.1.8/src/runtime-profiler.h +77 -0
  360. data/ext/v8/upstream/3.1.8/src/runtime.cc +11592 -0
  361. data/ext/v8/upstream/3.1.8/src/runtime.h +582 -0
  362. data/ext/v8/upstream/3.1.8/src/runtime.js +643 -0
  363. data/ext/v8/upstream/3.1.8/src/safepoint-table.cc +253 -0
  364. data/ext/v8/upstream/3.1.8/src/safepoint-table.h +263 -0
  365. data/ext/v8/upstream/3.1.8/src/scanner-base.cc +971 -0
  366. data/ext/v8/upstream/3.1.8/src/scanner-base.h +653 -0
  367. data/ext/v8/upstream/3.1.8/src/scanner.cc +586 -0
  368. data/ext/v8/upstream/3.1.8/src/scanner.h +194 -0
  369. data/ext/v8/upstream/3.1.8/src/scopeinfo.cc +636 -0
  370. data/ext/v8/upstream/3.1.8/src/scopeinfo.h +238 -0
  371. data/ext/v8/upstream/3.1.8/src/scopes.cc +1063 -0
  372. data/ext/v8/upstream/3.1.8/src/scopes.h +494 -0
  373. data/ext/v8/upstream/3.1.8/src/serialize.cc +1535 -0
  374. data/ext/v8/upstream/3.1.8/src/serialize.h +584 -0
  375. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/shell.h +0 -0
  376. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/simulator.h +0 -0
  377. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/smart-pointer.h +0 -0
  378. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/snapshot-common.cc +0 -0
  379. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/snapshot-empty.cc +0 -0
  380. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/snapshot.h +0 -0
  381. data/ext/v8/upstream/3.1.8/src/spaces-inl.h +524 -0
  382. data/ext/v8/upstream/3.1.8/src/spaces.cc +3254 -0
  383. data/ext/v8/upstream/3.1.8/src/spaces.h +2362 -0
  384. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/splay-tree-inl.h +0 -0
  385. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/splay-tree.h +0 -0
  386. data/ext/v8/upstream/3.1.8/src/string-search.cc +40 -0
  387. data/ext/v8/upstream/3.1.8/src/string-search.h +567 -0
  388. data/ext/v8/upstream/3.1.8/src/string-stream.cc +584 -0
  389. data/ext/v8/upstream/3.1.8/src/string-stream.h +191 -0
  390. data/ext/v8/upstream/3.1.8/src/string.js +915 -0
  391. data/ext/v8/upstream/3.1.8/src/strtod.cc +440 -0
  392. data/ext/v8/upstream/3.1.8/src/strtod.h +40 -0
  393. data/ext/v8/upstream/3.1.8/src/stub-cache.cc +1878 -0
  394. data/ext/v8/upstream/3.1.8/src/stub-cache.h +849 -0
  395. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/third_party/valgrind/valgrind.h +0 -0
  396. data/ext/v8/upstream/3.1.8/src/token.cc +63 -0
  397. data/ext/v8/upstream/3.1.8/src/token.h +288 -0
  398. data/ext/v8/upstream/3.1.8/src/top.cc +1152 -0
  399. data/ext/v8/upstream/3.1.8/src/top.h +608 -0
  400. data/ext/v8/upstream/3.1.8/src/type-info.cc +406 -0
  401. data/ext/v8/upstream/3.1.8/src/type-info.h +283 -0
  402. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/unbound-queue-inl.h +0 -0
  403. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/unbound-queue.h +0 -0
  404. data/ext/v8/upstream/3.1.8/src/unicode-inl.h +238 -0
  405. data/ext/v8/upstream/3.1.8/src/unicode.cc +1624 -0
  406. data/ext/v8/upstream/3.1.8/src/unicode.h +280 -0
  407. data/ext/v8/upstream/3.1.8/src/uri.js +402 -0
  408. data/ext/v8/upstream/3.1.8/src/utils.cc +371 -0
  409. data/ext/v8/upstream/3.1.8/src/utils.h +793 -0
  410. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/v8-counters.cc +0 -0
  411. data/ext/v8/upstream/3.1.8/src/v8-counters.h +290 -0
  412. data/ext/v8/upstream/3.1.8/src/v8.cc +270 -0
  413. data/ext/v8/upstream/3.1.8/src/v8.h +127 -0
  414. data/ext/v8/upstream/3.1.8/src/v8checks.h +64 -0
  415. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/v8dll-main.cc +0 -0
  416. data/ext/v8/upstream/3.1.8/src/v8globals.h +480 -0
  417. data/ext/v8/upstream/3.1.8/src/v8natives.js +1252 -0
  418. data/ext/v8/upstream/3.1.8/src/v8preparserdll-main.cc +39 -0
  419. data/ext/v8/upstream/3.1.8/src/v8threads.cc +440 -0
  420. data/ext/v8/upstream/3.1.8/src/v8threads.h +157 -0
  421. data/ext/v8/upstream/3.1.8/src/v8utils.h +354 -0
  422. data/ext/v8/upstream/3.1.8/src/variables.cc +132 -0
  423. data/ext/v8/upstream/3.1.8/src/variables.h +212 -0
  424. data/ext/v8/upstream/3.1.8/src/version.cc +95 -0
  425. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/version.h +0 -0
  426. data/ext/v8/upstream/3.1.8/src/virtual-frame-heavy-inl.h +190 -0
  427. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/virtual-frame-heavy.cc +0 -0
  428. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/virtual-frame-inl.h +0 -0
  429. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/virtual-frame-light-inl.h +0 -0
  430. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/virtual-frame-light.cc +0 -0
  431. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/virtual-frame.cc +0 -0
  432. data/ext/v8/upstream/3.1.8/src/virtual-frame.h +59 -0
  433. data/ext/v8/upstream/3.1.8/src/vm-state-inl.h +134 -0
  434. data/ext/v8/upstream/3.1.8/src/vm-state.h +68 -0
  435. data/ext/v8/upstream/3.1.8/src/win32-headers.h +95 -0
  436. data/ext/v8/upstream/3.1.8/src/x64/assembler-x64-inl.h +455 -0
  437. data/ext/v8/upstream/3.1.8/src/x64/assembler-x64.cc +3162 -0
  438. data/ext/v8/upstream/3.1.8/src/x64/assembler-x64.h +1584 -0
  439. data/ext/v8/upstream/3.1.8/src/x64/builtins-x64.cc +1492 -0
  440. data/ext/v8/upstream/3.1.8/src/x64/code-stubs-x64.cc +5150 -0
  441. data/ext/v8/upstream/3.1.8/src/x64/code-stubs-x64.h +519 -0
  442. data/ext/v8/upstream/3.1.8/src/x64/codegen-x64-inl.h +46 -0
  443. data/ext/v8/upstream/3.1.8/src/x64/codegen-x64.cc +8835 -0
  444. data/ext/v8/upstream/3.1.8/src/x64/codegen-x64.h +750 -0
  445. data/ext/v8/upstream/3.1.8/src/x64/cpu-x64.cc +86 -0
  446. data/ext/v8/upstream/3.1.8/src/x64/debug-x64.cc +316 -0
  447. data/ext/v8/upstream/3.1.8/src/x64/deoptimizer-x64.cc +781 -0
  448. data/ext/v8/upstream/3.1.8/src/x64/disasm-x64.cc +1737 -0
  449. data/ext/v8/upstream/3.1.8/src/x64/frames-x64.cc +45 -0
  450. data/ext/v8/upstream/3.1.8/src/x64/frames-x64.h +130 -0
  451. data/ext/v8/upstream/3.1.8/src/x64/full-codegen-x64.cc +3984 -0
  452. data/ext/v8/upstream/3.1.8/src/x64/ic-x64.cc +1761 -0
  453. data/ext/v8/upstream/3.1.8/src/x64/jump-target-x64.cc +437 -0
  454. data/ext/v8/upstream/3.1.8/src/x64/lithium-codegen-x64.cc +3639 -0
  455. data/ext/v8/upstream/3.1.8/src/x64/lithium-codegen-x64.h +305 -0
  456. data/ext/v8/upstream/3.1.8/src/x64/lithium-gap-resolver-x64.cc +320 -0
  457. data/ext/v8/upstream/3.1.8/src/x64/lithium-gap-resolver-x64.h +74 -0
  458. data/ext/v8/upstream/3.1.8/src/x64/lithium-x64.cc +2044 -0
  459. data/ext/v8/upstream/3.1.8/src/x64/lithium-x64.h +2052 -0
  460. data/ext/v8/upstream/3.1.8/src/x64/macro-assembler-x64.cc +2660 -0
  461. data/ext/v8/upstream/3.1.8/src/x64/macro-assembler-x64.h +1852 -0
  462. data/ext/v8/upstream/3.1.8/src/x64/regexp-macro-assembler-x64.cc +1382 -0
  463. data/ext/v8/upstream/3.1.8/src/x64/regexp-macro-assembler-x64.h +278 -0
  464. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/x64/register-allocator-x64-inl.h +0 -0
  465. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/x64/register-allocator-x64.cc +0 -0
  466. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/x64/register-allocator-x64.h +0 -0
  467. data/ext/v8/upstream/{2.3.3 → 3.1.8}/src/x64/simulator-x64.cc +0 -0
  468. data/ext/v8/upstream/3.1.8/src/x64/simulator-x64.h +71 -0
  469. data/ext/v8/upstream/3.1.8/src/x64/stub-cache-x64.cc +3509 -0
  470. data/ext/v8/upstream/3.1.8/src/x64/virtual-frame-x64.cc +1292 -0
  471. data/ext/v8/upstream/3.1.8/src/x64/virtual-frame-x64.h +593 -0
  472. data/ext/v8/upstream/3.1.8/src/zone-inl.h +83 -0
  473. data/ext/v8/upstream/3.1.8/src/zone.cc +195 -0
  474. data/ext/v8/upstream/3.1.8/src/zone.h +233 -0
  475. data/ext/v8/upstream/3.1.8/tools/codemap.js +265 -0
  476. data/ext/v8/upstream/{2.3.3 → 3.1.8}/tools/consarray.js +0 -0
  477. data/ext/v8/upstream/3.1.8/tools/csvparser.js +78 -0
  478. data/ext/v8/upstream/3.1.8/tools/disasm.py +92 -0
  479. data/ext/v8/upstream/3.1.8/tools/gc-nvp-trace-processor.py +328 -0
  480. data/ext/v8/upstream/{2.3.3 → 3.1.8}/tools/generate-ten-powers.scm +0 -0
  481. data/ext/v8/upstream/3.1.8/tools/grokdump.py +840 -0
  482. data/ext/v8/upstream/3.1.8/tools/gyp/v8.gyp +869 -0
  483. data/ext/v8/upstream/{2.3.3 → 3.1.8}/tools/js2c.py +0 -0
  484. data/ext/v8/upstream/{2.3.3 → 3.1.8}/tools/jsmin.py +0 -0
  485. data/ext/v8/upstream/{2.3.3 → 3.1.8}/tools/linux-tick-processor +0 -0
  486. data/ext/v8/upstream/3.1.8/tools/ll_prof.py +919 -0
  487. data/ext/v8/upstream/3.1.8/tools/logreader.js +185 -0
  488. data/ext/v8/upstream/{2.3.3 → 3.1.8}/tools/mac-nm +0 -0
  489. data/ext/v8/upstream/{2.3.3 → 3.1.8}/tools/mac-tick-processor +0 -0
  490. data/ext/v8/upstream/3.1.8/tools/oom_dump/README +31 -0
  491. data/ext/v8/upstream/3.1.8/tools/oom_dump/SConstruct +42 -0
  492. data/ext/v8/upstream/3.1.8/tools/oom_dump/oom_dump.cc +288 -0
  493. data/ext/v8/upstream/3.1.8/tools/presubmit.py +305 -0
  494. data/ext/v8/upstream/{2.3.3 → 3.1.8}/tools/process-heap-prof.py +0 -0
  495. data/ext/v8/upstream/3.1.8/tools/profile.js +751 -0
  496. data/ext/v8/upstream/3.1.8/tools/profile_view.js +219 -0
  497. data/ext/v8/upstream/{2.3.3 → 3.1.8}/tools/run-valgrind.py +0 -0
  498. data/ext/v8/upstream/3.1.8/tools/splaytree.js +316 -0
  499. data/ext/v8/upstream/{2.3.3 → 3.1.8}/tools/stats-viewer.py +0 -0
  500. data/ext/v8/upstream/{2.3.3 → 3.1.8}/tools/tickprocessor-driver.js +0 -0
  501. data/ext/v8/upstream/3.1.8/tools/tickprocessor.js +863 -0
  502. data/ext/v8/upstream/3.1.8/tools/utils.py +96 -0
  503. data/ext/v8/upstream/3.1.8/tools/visual_studio/README.txt +70 -0
  504. data/ext/v8/upstream/{2.3.3 → 3.1.8}/tools/visual_studio/arm.vsprops +0 -0
  505. data/ext/v8/upstream/3.1.8/tools/visual_studio/common.vsprops +34 -0
  506. data/ext/v8/upstream/{2.3.3 → 3.1.8}/tools/visual_studio/d8.vcproj +0 -0
  507. data/ext/v8/upstream/{2.3.3 → 3.1.8}/tools/visual_studio/d8_arm.vcproj +0 -0
  508. data/ext/v8/upstream/{2.3.3 → 3.1.8}/tools/visual_studio/d8_x64.vcproj +0 -0
  509. data/ext/v8/upstream/{2.3.3 → 3.1.8}/tools/visual_studio/d8js2c.cmd +0 -0
  510. data/ext/v8/upstream/3.1.8/tools/visual_studio/debug.vsprops +17 -0
  511. data/ext/v8/upstream/{2.3.3 → 3.1.8}/tools/visual_studio/ia32.vsprops +0 -0
  512. data/ext/v8/upstream/{2.3.3 → 3.1.8}/tools/visual_studio/js2c.cmd +0 -0
  513. data/ext/v8/upstream/{2.3.3 → 3.1.8}/tools/visual_studio/release.vsprops +0 -0
  514. data/ext/v8/upstream/{2.3.3 → 3.1.8}/tools/visual_studio/v8.sln +0 -0
  515. data/ext/v8/upstream/{2.3.3 → 3.1.8}/tools/visual_studio/v8.vcproj +0 -0
  516. data/ext/v8/upstream/{2.3.3 → 3.1.8}/tools/visual_studio/v8_arm.sln +0 -0
  517. data/ext/v8/upstream/{2.3.3 → 3.1.8}/tools/visual_studio/v8_arm.vcproj +0 -0
  518. data/ext/v8/upstream/3.1.8/tools/visual_studio/v8_base.vcproj +1296 -0
  519. data/ext/v8/upstream/3.1.8/tools/visual_studio/v8_base_arm.vcproj +1234 -0
  520. data/ext/v8/upstream/3.1.8/tools/visual_studio/v8_base_x64.vcproj +1296 -0
  521. data/ext/v8/upstream/{2.3.3 → 3.1.8}/tools/visual_studio/v8_cctest.vcproj +0 -0
  522. data/ext/v8/upstream/{2.3.3 → 3.1.8}/tools/visual_studio/v8_cctest_arm.vcproj +0 -0
  523. data/ext/v8/upstream/{2.3.3 → 3.1.8}/tools/visual_studio/v8_cctest_x64.vcproj +0 -0
  524. data/ext/v8/upstream/{2.3.3 → 3.1.8}/tools/visual_studio/v8_mksnapshot.vcproj +0 -0
  525. data/ext/v8/upstream/{2.3.3 → 3.1.8}/tools/visual_studio/v8_mksnapshot_x64.vcproj +0 -0
  526. data/ext/v8/upstream/{2.3.3 → 3.1.8}/tools/visual_studio/v8_process_sample.vcproj +0 -0
  527. data/ext/v8/upstream/{2.3.3 → 3.1.8}/tools/visual_studio/v8_process_sample_arm.vcproj +0 -0
  528. data/ext/v8/upstream/{2.3.3 → 3.1.8}/tools/visual_studio/v8_process_sample_x64.vcproj +0 -0
  529. data/ext/v8/upstream/3.1.8/tools/visual_studio/v8_shell_sample.vcproj +147 -0
  530. data/ext/v8/upstream/3.1.8/tools/visual_studio/v8_shell_sample_arm.vcproj +147 -0
  531. data/ext/v8/upstream/3.1.8/tools/visual_studio/v8_shell_sample_x64.vcproj +163 -0
  532. data/ext/v8/upstream/{2.3.3 → 3.1.8}/tools/visual_studio/v8_snapshot.vcproj +0 -0
  533. data/ext/v8/upstream/{2.3.3 → 3.1.8}/tools/visual_studio/v8_snapshot_cc.vcproj +0 -0
  534. data/ext/v8/upstream/{2.3.3 → 3.1.8}/tools/visual_studio/v8_snapshot_cc_x64.vcproj +0 -0
  535. data/ext/v8/upstream/{2.3.3 → 3.1.8}/tools/visual_studio/v8_snapshot_x64.vcproj +0 -0
  536. data/ext/v8/upstream/{2.3.3 → 3.1.8}/tools/visual_studio/v8_x64.sln +0 -0
  537. data/ext/v8/upstream/{2.3.3 → 3.1.8}/tools/visual_studio/v8_x64.vcproj +0 -0
  538. data/ext/v8/upstream/{2.3.3 → 3.1.8}/tools/visual_studio/x64.vsprops +0 -0
  539. data/ext/v8/upstream/3.1.8/tools/windows-tick-processor.bat +30 -0
  540. data/ext/v8/upstream/Makefile +2 -1
  541. data/ext/v8/v8_template.cpp +2 -2
  542. data/lib/v8/version.rb +1 -1
  543. data/spec/redjs/jsapi_spec.rb +2 -2
  544. metadata +552 -490
  545. data/ext/v8/upstream/2.3.3/.gitignore +0 -26
  546. data/ext/v8/upstream/2.3.3/AUTHORS +0 -31
  547. data/ext/v8/upstream/2.3.3/ChangeLog +0 -1916
  548. data/ext/v8/upstream/2.3.3/LICENSE +0 -55
  549. data/ext/v8/upstream/2.3.3/SConstruct +0 -1154
  550. data/ext/v8/upstream/2.3.3/include/v8-debug.h +0 -381
  551. data/ext/v8/upstream/2.3.3/include/v8-profiler.h +0 -353
  552. data/ext/v8/upstream/2.3.3/include/v8.h +0 -3616
  553. data/ext/v8/upstream/2.3.3/src/SConscript +0 -330
  554. data/ext/v8/upstream/2.3.3/src/accessors.cc +0 -661
  555. data/ext/v8/upstream/2.3.3/src/accessors.h +0 -114
  556. data/ext/v8/upstream/2.3.3/src/allocation.cc +0 -198
  557. data/ext/v8/upstream/2.3.3/src/allocation.h +0 -169
  558. data/ext/v8/upstream/2.3.3/src/api.cc +0 -4795
  559. data/ext/v8/upstream/2.3.3/src/api.h +0 -485
  560. data/ext/v8/upstream/2.3.3/src/apiutils.h +0 -69
  561. data/ext/v8/upstream/2.3.3/src/arguments.h +0 -96
  562. data/ext/v8/upstream/2.3.3/src/arm/assembler-arm-inl.h +0 -305
  563. data/ext/v8/upstream/2.3.3/src/arm/assembler-arm.cc +0 -2580
  564. data/ext/v8/upstream/2.3.3/src/arm/assembler-arm.h +0 -1275
  565. data/ext/v8/upstream/2.3.3/src/arm/builtins-arm.cc +0 -1320
  566. data/ext/v8/upstream/2.3.3/src/arm/codegen-arm-inl.h +0 -48
  567. data/ext/v8/upstream/2.3.3/src/arm/codegen-arm.cc +0 -11398
  568. data/ext/v8/upstream/2.3.3/src/arm/codegen-arm.h +0 -1102
  569. data/ext/v8/upstream/2.3.3/src/arm/constants-arm.cc +0 -154
  570. data/ext/v8/upstream/2.3.3/src/arm/constants-arm.h +0 -388
  571. data/ext/v8/upstream/2.3.3/src/arm/cpu-arm.cc +0 -142
  572. data/ext/v8/upstream/2.3.3/src/arm/debug-arm.cc +0 -309
  573. data/ext/v8/upstream/2.3.3/src/arm/disasm-arm.cc +0 -1459
  574. data/ext/v8/upstream/2.3.3/src/arm/fast-codegen-arm.cc +0 -241
  575. data/ext/v8/upstream/2.3.3/src/arm/frames-arm.cc +0 -123
  576. data/ext/v8/upstream/2.3.3/src/arm/frames-arm.h +0 -162
  577. data/ext/v8/upstream/2.3.3/src/arm/full-codegen-arm.cc +0 -3178
  578. data/ext/v8/upstream/2.3.3/src/arm/ic-arm.cc +0 -2258
  579. data/ext/v8/upstream/2.3.3/src/arm/jump-target-arm.cc +0 -164
  580. data/ext/v8/upstream/2.3.3/src/arm/macro-assembler-arm.cc +0 -1892
  581. data/ext/v8/upstream/2.3.3/src/arm/macro-assembler-arm.h +0 -727
  582. data/ext/v8/upstream/2.3.3/src/arm/regexp-macro-assembler-arm.cc +0 -1261
  583. data/ext/v8/upstream/2.3.3/src/arm/regexp-macro-assembler-arm.h +0 -266
  584. data/ext/v8/upstream/2.3.3/src/arm/simulator-arm.cc +0 -2822
  585. data/ext/v8/upstream/2.3.3/src/arm/simulator-arm.h +0 -361
  586. data/ext/v8/upstream/2.3.3/src/arm/stub-cache-arm.cc +0 -2387
  587. data/ext/v8/upstream/2.3.3/src/arm/virtual-frame-arm.cc +0 -834
  588. data/ext/v8/upstream/2.3.3/src/arm/virtual-frame-arm.h +0 -519
  589. data/ext/v8/upstream/2.3.3/src/array.js +0 -1127
  590. data/ext/v8/upstream/2.3.3/src/assembler.cc +0 -801
  591. data/ext/v8/upstream/2.3.3/src/assembler.h +0 -573
  592. data/ext/v8/upstream/2.3.3/src/ast-inl.h +0 -81
  593. data/ext/v8/upstream/2.3.3/src/ast.cc +0 -1152
  594. data/ext/v8/upstream/2.3.3/src/ast.h +0 -2106
  595. data/ext/v8/upstream/2.3.3/src/bootstrapper.cc +0 -1819
  596. data/ext/v8/upstream/2.3.3/src/builtins.cc +0 -1529
  597. data/ext/v8/upstream/2.3.3/src/builtins.h +0 -263
  598. data/ext/v8/upstream/2.3.3/src/bytecodes-irregexp.h +0 -104
  599. data/ext/v8/upstream/2.3.3/src/cached-powers.h +0 -119
  600. data/ext/v8/upstream/2.3.3/src/char-predicates-inl.h +0 -86
  601. data/ext/v8/upstream/2.3.3/src/checks.cc +0 -100
  602. data/ext/v8/upstream/2.3.3/src/checks.h +0 -310
  603. data/ext/v8/upstream/2.3.3/src/circular-queue.cc +0 -121
  604. data/ext/v8/upstream/2.3.3/src/code-stubs.cc +0 -177
  605. data/ext/v8/upstream/2.3.3/src/code-stubs.h +0 -177
  606. data/ext/v8/upstream/2.3.3/src/codegen-inl.h +0 -60
  607. data/ext/v8/upstream/2.3.3/src/codegen.cc +0 -516
  608. data/ext/v8/upstream/2.3.3/src/codegen.h +0 -897
  609. data/ext/v8/upstream/2.3.3/src/compilation-cache.cc +0 -562
  610. data/ext/v8/upstream/2.3.3/src/compilation-cache.h +0 -102
  611. data/ext/v8/upstream/2.3.3/src/compiler.cc +0 -654
  612. data/ext/v8/upstream/2.3.3/src/compiler.h +0 -299
  613. data/ext/v8/upstream/2.3.3/src/contexts.cc +0 -256
  614. data/ext/v8/upstream/2.3.3/src/contexts.h +0 -342
  615. data/ext/v8/upstream/2.3.3/src/conversions.cc +0 -1119
  616. data/ext/v8/upstream/2.3.3/src/conversions.h +0 -123
  617. data/ext/v8/upstream/2.3.3/src/counters.h +0 -239
  618. data/ext/v8/upstream/2.3.3/src/cpu-profiler-inl.h +0 -100
  619. data/ext/v8/upstream/2.3.3/src/cpu-profiler.cc +0 -538
  620. data/ext/v8/upstream/2.3.3/src/cpu-profiler.h +0 -285
  621. data/ext/v8/upstream/2.3.3/src/d8-debug.cc +0 -356
  622. data/ext/v8/upstream/2.3.3/src/d8-debug.h +0 -155
  623. data/ext/v8/upstream/2.3.3/src/d8.cc +0 -783
  624. data/ext/v8/upstream/2.3.3/src/d8.h +0 -227
  625. data/ext/v8/upstream/2.3.3/src/d8.js +0 -1683
  626. data/ext/v8/upstream/2.3.3/src/data-flow.cc +0 -758
  627. data/ext/v8/upstream/2.3.3/src/data-flow.h +0 -278
  628. data/ext/v8/upstream/2.3.3/src/date.js +0 -1059
  629. data/ext/v8/upstream/2.3.3/src/dateparser-inl.h +0 -123
  630. data/ext/v8/upstream/2.3.3/src/dateparser.h +0 -244
  631. data/ext/v8/upstream/2.3.3/src/debug-agent.cc +0 -427
  632. data/ext/v8/upstream/2.3.3/src/debug-agent.h +0 -129
  633. data/ext/v8/upstream/2.3.3/src/debug-debugger.js +0 -2227
  634. data/ext/v8/upstream/2.3.3/src/debug.cc +0 -3005
  635. data/ext/v8/upstream/2.3.3/src/debug.h +0 -993
  636. data/ext/v8/upstream/2.3.3/src/disassembler.cc +0 -312
  637. data/ext/v8/upstream/2.3.3/src/double.h +0 -169
  638. data/ext/v8/upstream/2.3.3/src/dtoa-config.c +0 -92
  639. data/ext/v8/upstream/2.3.3/src/dtoa.cc +0 -77
  640. data/ext/v8/upstream/2.3.3/src/dtoa.h +0 -81
  641. data/ext/v8/upstream/2.3.3/src/execution.cc +0 -809
  642. data/ext/v8/upstream/2.3.3/src/execution.h +0 -336
  643. data/ext/v8/upstream/2.3.3/src/factory.cc +0 -1003
  644. data/ext/v8/upstream/2.3.3/src/factory.h +0 -410
  645. data/ext/v8/upstream/2.3.3/src/fast-codegen.cc +0 -746
  646. data/ext/v8/upstream/2.3.3/src/fast-codegen.h +0 -161
  647. data/ext/v8/upstream/2.3.3/src/fast-dtoa.cc +0 -505
  648. data/ext/v8/upstream/2.3.3/src/fast-dtoa.h +0 -58
  649. data/ext/v8/upstream/2.3.3/src/flag-definitions.h +0 -455
  650. data/ext/v8/upstream/2.3.3/src/flags.cc +0 -551
  651. data/ext/v8/upstream/2.3.3/src/flags.h +0 -81
  652. data/ext/v8/upstream/2.3.3/src/flow-graph.cc +0 -763
  653. data/ext/v8/upstream/2.3.3/src/flow-graph.h +0 -180
  654. data/ext/v8/upstream/2.3.3/src/frame-element.h +0 -273
  655. data/ext/v8/upstream/2.3.3/src/frames-inl.h +0 -217
  656. data/ext/v8/upstream/2.3.3/src/frames.cc +0 -826
  657. data/ext/v8/upstream/2.3.3/src/frames.h +0 -682
  658. data/ext/v8/upstream/2.3.3/src/full-codegen.cc +0 -1443
  659. data/ext/v8/upstream/2.3.3/src/full-codegen.h +0 -548
  660. data/ext/v8/upstream/2.3.3/src/func-name-inferrer.cc +0 -76
  661. data/ext/v8/upstream/2.3.3/src/func-name-inferrer.h +0 -135
  662. data/ext/v8/upstream/2.3.3/src/global-handles.cc +0 -520
  663. data/ext/v8/upstream/2.3.3/src/global-handles.h +0 -180
  664. data/ext/v8/upstream/2.3.3/src/globals.h +0 -669
  665. data/ext/v8/upstream/2.3.3/src/handles-inl.h +0 -76
  666. data/ext/v8/upstream/2.3.3/src/handles.cc +0 -825
  667. data/ext/v8/upstream/2.3.3/src/handles.h +0 -393
  668. data/ext/v8/upstream/2.3.3/src/hashmap.cc +0 -226
  669. data/ext/v8/upstream/2.3.3/src/hashmap.h +0 -120
  670. data/ext/v8/upstream/2.3.3/src/heap-inl.h +0 -493
  671. data/ext/v8/upstream/2.3.3/src/heap-profiler.cc +0 -779
  672. data/ext/v8/upstream/2.3.3/src/heap-profiler.h +0 -323
  673. data/ext/v8/upstream/2.3.3/src/heap.cc +0 -4994
  674. data/ext/v8/upstream/2.3.3/src/heap.h +0 -1984
  675. data/ext/v8/upstream/2.3.3/src/ia32/assembler-ia32-inl.h +0 -360
  676. data/ext/v8/upstream/2.3.3/src/ia32/assembler-ia32.cc +0 -2600
  677. data/ext/v8/upstream/2.3.3/src/ia32/assembler-ia32.h +0 -969
  678. data/ext/v8/upstream/2.3.3/src/ia32/builtins-ia32.cc +0 -1261
  679. data/ext/v8/upstream/2.3.3/src/ia32/codegen-ia32.cc +0 -13968
  680. data/ext/v8/upstream/2.3.3/src/ia32/codegen-ia32.h +0 -1097
  681. data/ext/v8/upstream/2.3.3/src/ia32/cpu-ia32.cc +0 -83
  682. data/ext/v8/upstream/2.3.3/src/ia32/debug-ia32.cc +0 -309
  683. data/ext/v8/upstream/2.3.3/src/ia32/disasm-ia32.cc +0 -1471
  684. data/ext/v8/upstream/2.3.3/src/ia32/fast-codegen-ia32.cc +0 -954
  685. data/ext/v8/upstream/2.3.3/src/ia32/fast-codegen-ia32.h +0 -155
  686. data/ext/v8/upstream/2.3.3/src/ia32/frames-ia32.cc +0 -115
  687. data/ext/v8/upstream/2.3.3/src/ia32/frames-ia32.h +0 -135
  688. data/ext/v8/upstream/2.3.3/src/ia32/full-codegen-ia32.cc +0 -3281
  689. data/ext/v8/upstream/2.3.3/src/ia32/ic-ia32.cc +0 -1966
  690. data/ext/v8/upstream/2.3.3/src/ia32/macro-assembler-ia32.cc +0 -1610
  691. data/ext/v8/upstream/2.3.3/src/ia32/macro-assembler-ia32.h +0 -610
  692. data/ext/v8/upstream/2.3.3/src/ia32/regexp-macro-assembler-ia32.cc +0 -1247
  693. data/ext/v8/upstream/2.3.3/src/ia32/regexp-macro-assembler-ia32.h +0 -214
  694. data/ext/v8/upstream/2.3.3/src/ia32/simulator-ia32.h +0 -62
  695. data/ext/v8/upstream/2.3.3/src/ia32/stub-cache-ia32.cc +0 -2750
  696. data/ext/v8/upstream/2.3.3/src/ia32/virtual-frame-ia32.cc +0 -1334
  697. data/ext/v8/upstream/2.3.3/src/ia32/virtual-frame-ia32.h +0 -627
  698. data/ext/v8/upstream/2.3.3/src/ic-inl.h +0 -120
  699. data/ext/v8/upstream/2.3.3/src/ic.cc +0 -1827
  700. data/ext/v8/upstream/2.3.3/src/ic.h +0 -515
  701. data/ext/v8/upstream/2.3.3/src/interpreter-irregexp.cc +0 -646
  702. data/ext/v8/upstream/2.3.3/src/json.js +0 -268
  703. data/ext/v8/upstream/2.3.3/src/jsregexp.cc +0 -5283
  704. data/ext/v8/upstream/2.3.3/src/jsregexp.h +0 -1463
  705. data/ext/v8/upstream/2.3.3/src/jump-target-heavy.cc +0 -429
  706. data/ext/v8/upstream/2.3.3/src/jump-target-heavy.h +0 -244
  707. data/ext/v8/upstream/2.3.3/src/jump-target-light.cc +0 -110
  708. data/ext/v8/upstream/2.3.3/src/jump-target-light.h +0 -192
  709. data/ext/v8/upstream/2.3.3/src/list-inl.h +0 -166
  710. data/ext/v8/upstream/2.3.3/src/list.h +0 -159
  711. data/ext/v8/upstream/2.3.3/src/liveedit-debugger.js +0 -1057
  712. data/ext/v8/upstream/2.3.3/src/liveedit.cc +0 -1480
  713. data/ext/v8/upstream/2.3.3/src/liveedit.h +0 -170
  714. data/ext/v8/upstream/2.3.3/src/log-utils.cc +0 -497
  715. data/ext/v8/upstream/2.3.3/src/log-utils.h +0 -289
  716. data/ext/v8/upstream/2.3.3/src/log.cc +0 -1561
  717. data/ext/v8/upstream/2.3.3/src/log.h +0 -384
  718. data/ext/v8/upstream/2.3.3/src/macro-assembler.h +0 -86
  719. data/ext/v8/upstream/2.3.3/src/macros.py +0 -177
  720. data/ext/v8/upstream/2.3.3/src/mark-compact.cc +0 -2330
  721. data/ext/v8/upstream/2.3.3/src/mark-compact.h +0 -451
  722. data/ext/v8/upstream/2.3.3/src/math.js +0 -264
  723. data/ext/v8/upstream/2.3.3/src/memory.h +0 -74
  724. data/ext/v8/upstream/2.3.3/src/messages.cc +0 -183
  725. data/ext/v8/upstream/2.3.3/src/messages.h +0 -113
  726. data/ext/v8/upstream/2.3.3/src/messages.js +0 -982
  727. data/ext/v8/upstream/2.3.3/src/mips/assembler-mips.h +0 -668
  728. data/ext/v8/upstream/2.3.3/src/mips/builtins-mips.cc +0 -205
  729. data/ext/v8/upstream/2.3.3/src/mips/codegen-mips.h +0 -434
  730. data/ext/v8/upstream/2.3.3/src/mips/debug-mips.cc +0 -131
  731. data/ext/v8/upstream/2.3.3/src/mips/frames-mips.cc +0 -102
  732. data/ext/v8/upstream/2.3.3/src/mips/ic-mips.cc +0 -220
  733. data/ext/v8/upstream/2.3.3/src/mips/simulator-mips.cc +0 -1651
  734. data/ext/v8/upstream/2.3.3/src/mips/simulator-mips.h +0 -311
  735. data/ext/v8/upstream/2.3.3/src/mips/stub-cache-mips.cc +0 -403
  736. data/ext/v8/upstream/2.3.3/src/mirror-debugger.js +0 -2380
  737. data/ext/v8/upstream/2.3.3/src/objects-debug.cc +0 -1366
  738. data/ext/v8/upstream/2.3.3/src/objects-inl.h +0 -3333
  739. data/ext/v8/upstream/2.3.3/src/objects.cc +0 -8820
  740. data/ext/v8/upstream/2.3.3/src/objects.h +0 -5373
  741. data/ext/v8/upstream/2.3.3/src/oprofile-agent.cc +0 -108
  742. data/ext/v8/upstream/2.3.3/src/oprofile-agent.h +0 -77
  743. data/ext/v8/upstream/2.3.3/src/parser.cc +0 -5207
  744. data/ext/v8/upstream/2.3.3/src/parser.h +0 -197
  745. data/ext/v8/upstream/2.3.3/src/platform-freebsd.cc +0 -667
  746. data/ext/v8/upstream/2.3.3/src/platform-linux.cc +0 -862
  747. data/ext/v8/upstream/2.3.3/src/platform-macos.cc +0 -665
  748. data/ext/v8/upstream/2.3.3/src/platform-nullos.cc +0 -454
  749. data/ext/v8/upstream/2.3.3/src/platform-openbsd.cc +0 -622
  750. data/ext/v8/upstream/2.3.3/src/platform-posix.cc +0 -362
  751. data/ext/v8/upstream/2.3.3/src/platform-solaris.cc +0 -653
  752. data/ext/v8/upstream/2.3.3/src/platform-win32.cc +0 -1911
  753. data/ext/v8/upstream/2.3.3/src/platform.h +0 -577
  754. data/ext/v8/upstream/2.3.3/src/powers-ten.h +0 -2461
  755. data/ext/v8/upstream/2.3.3/src/prettyprinter.cc +0 -1531
  756. data/ext/v8/upstream/2.3.3/src/prettyprinter.h +0 -221
  757. data/ext/v8/upstream/2.3.3/src/profile-generator-inl.h +0 -148
  758. data/ext/v8/upstream/2.3.3/src/profile-generator.cc +0 -1830
  759. data/ext/v8/upstream/2.3.3/src/profile-generator.h +0 -853
  760. data/ext/v8/upstream/2.3.3/src/property.cc +0 -96
  761. data/ext/v8/upstream/2.3.3/src/property.h +0 -315
  762. data/ext/v8/upstream/2.3.3/src/regexp-macro-assembler-irregexp.cc +0 -464
  763. data/ext/v8/upstream/2.3.3/src/regexp-macro-assembler-irregexp.h +0 -141
  764. data/ext/v8/upstream/2.3.3/src/regexp-macro-assembler-tracer.cc +0 -356
  765. data/ext/v8/upstream/2.3.3/src/regexp-macro-assembler-tracer.h +0 -103
  766. data/ext/v8/upstream/2.3.3/src/regexp-macro-assembler.cc +0 -261
  767. data/ext/v8/upstream/2.3.3/src/regexp-macro-assembler.h +0 -228
  768. data/ext/v8/upstream/2.3.3/src/regexp.js +0 -549
  769. data/ext/v8/upstream/2.3.3/src/rewriter.cc +0 -1038
  770. data/ext/v8/upstream/2.3.3/src/rewriter.h +0 -54
  771. data/ext/v8/upstream/2.3.3/src/runtime.cc +0 -10599
  772. data/ext/v8/upstream/2.3.3/src/runtime.h +0 -459
  773. data/ext/v8/upstream/2.3.3/src/runtime.js +0 -629
  774. data/ext/v8/upstream/2.3.3/src/scanner.cc +0 -1346
  775. data/ext/v8/upstream/2.3.3/src/scanner.h +0 -503
  776. data/ext/v8/upstream/2.3.3/src/scopeinfo.cc +0 -637
  777. data/ext/v8/upstream/2.3.3/src/scopeinfo.h +0 -233
  778. data/ext/v8/upstream/2.3.3/src/scopes.cc +0 -962
  779. data/ext/v8/upstream/2.3.3/src/scopes.h +0 -400
  780. data/ext/v8/upstream/2.3.3/src/serialize.cc +0 -1461
  781. data/ext/v8/upstream/2.3.3/src/serialize.h +0 -581
  782. data/ext/v8/upstream/2.3.3/src/spaces-inl.h +0 -483
  783. data/ext/v8/upstream/2.3.3/src/spaces.cc +0 -2901
  784. data/ext/v8/upstream/2.3.3/src/spaces.h +0 -2197
  785. data/ext/v8/upstream/2.3.3/src/string-stream.cc +0 -584
  786. data/ext/v8/upstream/2.3.3/src/string-stream.h +0 -189
  787. data/ext/v8/upstream/2.3.3/src/string.js +0 -1006
  788. data/ext/v8/upstream/2.3.3/src/stub-cache.cc +0 -1379
  789. data/ext/v8/upstream/2.3.3/src/stub-cache.h +0 -756
  790. data/ext/v8/upstream/2.3.3/src/third_party/dtoa/COPYING +0 -15
  791. data/ext/v8/upstream/2.3.3/src/third_party/dtoa/dtoa.c +0 -3334
  792. data/ext/v8/upstream/2.3.3/src/token.cc +0 -56
  793. data/ext/v8/upstream/2.3.3/src/token.h +0 -270
  794. data/ext/v8/upstream/2.3.3/src/top.cc +0 -1067
  795. data/ext/v8/upstream/2.3.3/src/top.h +0 -463
  796. data/ext/v8/upstream/2.3.3/src/type-info.cc +0 -53
  797. data/ext/v8/upstream/2.3.3/src/type-info.h +0 -244
  798. data/ext/v8/upstream/2.3.3/src/unicode-inl.h +0 -238
  799. data/ext/v8/upstream/2.3.3/src/unicode.cc +0 -749
  800. data/ext/v8/upstream/2.3.3/src/unicode.h +0 -279
  801. data/ext/v8/upstream/2.3.3/src/uri.js +0 -415
  802. data/ext/v8/upstream/2.3.3/src/utils.cc +0 -285
  803. data/ext/v8/upstream/2.3.3/src/utils.h +0 -745
  804. data/ext/v8/upstream/2.3.3/src/v8-counters.h +0 -250
  805. data/ext/v8/upstream/2.3.3/src/v8.cc +0 -228
  806. data/ext/v8/upstream/2.3.3/src/v8.h +0 -121
  807. data/ext/v8/upstream/2.3.3/src/v8natives.js +0 -1188
  808. data/ext/v8/upstream/2.3.3/src/v8threads.cc +0 -461
  809. data/ext/v8/upstream/2.3.3/src/v8threads.h +0 -159
  810. data/ext/v8/upstream/2.3.3/src/variables.cc +0 -119
  811. data/ext/v8/upstream/2.3.3/src/variables.h +0 -205
  812. data/ext/v8/upstream/2.3.3/src/version.cc +0 -88
  813. data/ext/v8/upstream/2.3.3/src/virtual-frame-heavy-inl.h +0 -192
  814. data/ext/v8/upstream/2.3.3/src/virtual-frame.h +0 -46
  815. data/ext/v8/upstream/2.3.3/src/vm-state-inl.h +0 -137
  816. data/ext/v8/upstream/2.3.3/src/vm-state.cc +0 -39
  817. data/ext/v8/upstream/2.3.3/src/vm-state.h +0 -77
  818. data/ext/v8/upstream/2.3.3/src/x64/assembler-x64-inl.h +0 -400
  819. data/ext/v8/upstream/2.3.3/src/x64/assembler-x64.cc +0 -2963
  820. data/ext/v8/upstream/2.3.3/src/x64/assembler-x64.h +0 -1438
  821. data/ext/v8/upstream/2.3.3/src/x64/builtins-x64.cc +0 -1296
  822. data/ext/v8/upstream/2.3.3/src/x64/codegen-x64-inl.h +0 -46
  823. data/ext/v8/upstream/2.3.3/src/x64/codegen-x64.cc +0 -12491
  824. data/ext/v8/upstream/2.3.3/src/x64/codegen-x64.h +0 -1090
  825. data/ext/v8/upstream/2.3.3/src/x64/cpu-x64.cc +0 -83
  826. data/ext/v8/upstream/2.3.3/src/x64/debug-x64.cc +0 -267
  827. data/ext/v8/upstream/2.3.3/src/x64/disasm-x64.cc +0 -1696
  828. data/ext/v8/upstream/2.3.3/src/x64/fast-codegen-x64.cc +0 -250
  829. data/ext/v8/upstream/2.3.3/src/x64/frames-x64.cc +0 -113
  830. data/ext/v8/upstream/2.3.3/src/x64/frames-x64.h +0 -125
  831. data/ext/v8/upstream/2.3.3/src/x64/full-codegen-x64.cc +0 -3270
  832. data/ext/v8/upstream/2.3.3/src/x64/ic-x64.cc +0 -1907
  833. data/ext/v8/upstream/2.3.3/src/x64/jump-target-x64.cc +0 -437
  834. data/ext/v8/upstream/2.3.3/src/x64/macro-assembler-x64.cc +0 -2793
  835. data/ext/v8/upstream/2.3.3/src/x64/macro-assembler-x64.h +0 -916
  836. data/ext/v8/upstream/2.3.3/src/x64/regexp-macro-assembler-x64.cc +0 -1374
  837. data/ext/v8/upstream/2.3.3/src/x64/regexp-macro-assembler-x64.h +0 -277
  838. data/ext/v8/upstream/2.3.3/src/x64/simulator-x64.h +0 -63
  839. data/ext/v8/upstream/2.3.3/src/x64/stub-cache-x64.cc +0 -2560
  840. data/ext/v8/upstream/2.3.3/src/x64/virtual-frame-x64.cc +0 -1264
  841. data/ext/v8/upstream/2.3.3/src/x64/virtual-frame-x64.h +0 -590
  842. data/ext/v8/upstream/2.3.3/src/zone-inl.h +0 -82
  843. data/ext/v8/upstream/2.3.3/src/zone.cc +0 -194
  844. data/ext/v8/upstream/2.3.3/src/zone.h +0 -221
  845. data/ext/v8/upstream/2.3.3/tools/codemap.js +0 -270
  846. data/ext/v8/upstream/2.3.3/tools/csvparser.js +0 -83
  847. data/ext/v8/upstream/2.3.3/tools/gc-nvp-trace-processor.py +0 -317
  848. data/ext/v8/upstream/2.3.3/tools/gyp/v8.gyp +0 -749
  849. data/ext/v8/upstream/2.3.3/tools/linux-tick-processor.py +0 -78
  850. data/ext/v8/upstream/2.3.3/tools/logreader.js +0 -338
  851. data/ext/v8/upstream/2.3.3/tools/oprofile/annotate +0 -7
  852. data/ext/v8/upstream/2.3.3/tools/oprofile/common +0 -19
  853. data/ext/v8/upstream/2.3.3/tools/oprofile/dump +0 -7
  854. data/ext/v8/upstream/2.3.3/tools/oprofile/report +0 -7
  855. data/ext/v8/upstream/2.3.3/tools/oprofile/reset +0 -7
  856. data/ext/v8/upstream/2.3.3/tools/oprofile/run +0 -14
  857. data/ext/v8/upstream/2.3.3/tools/oprofile/shutdown +0 -7
  858. data/ext/v8/upstream/2.3.3/tools/oprofile/start +0 -7
  859. data/ext/v8/upstream/2.3.3/tools/presubmit.py +0 -299
  860. data/ext/v8/upstream/2.3.3/tools/profile.js +0 -691
  861. data/ext/v8/upstream/2.3.3/tools/profile_view.js +0 -224
  862. data/ext/v8/upstream/2.3.3/tools/splaytree.js +0 -322
  863. data/ext/v8/upstream/2.3.3/tools/splaytree.py +0 -226
  864. data/ext/v8/upstream/2.3.3/tools/tickprocessor.js +0 -862
  865. data/ext/v8/upstream/2.3.3/tools/tickprocessor.py +0 -571
  866. data/ext/v8/upstream/2.3.3/tools/utils.py +0 -88
  867. data/ext/v8/upstream/2.3.3/tools/visual_studio/README.txt +0 -71
  868. data/ext/v8/upstream/2.3.3/tools/visual_studio/common.vsprops +0 -34
  869. data/ext/v8/upstream/2.3.3/tools/visual_studio/debug.vsprops +0 -17
  870. data/ext/v8/upstream/2.3.3/tools/visual_studio/v8_base.vcproj +0 -1143
  871. data/ext/v8/upstream/2.3.3/tools/visual_studio/v8_base_arm.vcproj +0 -1115
  872. data/ext/v8/upstream/2.3.3/tools/visual_studio/v8_base_x64.vcproj +0 -1096
  873. data/ext/v8/upstream/2.3.3/tools/visual_studio/v8_shell_sample.vcproj +0 -145
  874. data/ext/v8/upstream/2.3.3/tools/visual_studio/v8_shell_sample_arm.vcproj +0 -145
  875. data/ext/v8/upstream/2.3.3/tools/visual_studio/v8_shell_sample_x64.vcproj +0 -161
  876. data/ext/v8/upstream/2.3.3/tools/windows-tick-processor.bat +0 -29
  877. data/ext/v8/upstream/2.3.3/tools/windows-tick-processor.py +0 -137
@@ -1,1127 +0,0 @@
1
- // Copyright 2006-2008 the V8 project authors. All rights reserved.
2
- // Redistribution and use in source and binary forms, with or without
3
- // modification, are permitted provided that the following conditions are
4
- // met:
5
- //
6
- // * Redistributions of source code must retain the above copyright
7
- // notice, this list of conditions and the following disclaimer.
8
- // * Redistributions in binary form must reproduce the above
9
- // copyright notice, this list of conditions and the following
10
- // disclaimer in the documentation and/or other materials provided
11
- // with the distribution.
12
- // * Neither the name of Google Inc. nor the names of its
13
- // contributors may be used to endorse or promote products derived
14
- // from this software without specific prior written permission.
15
- //
16
- // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
17
- // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
18
- // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
19
- // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
20
- // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
21
- // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
22
- // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
23
- // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
24
- // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
25
- // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
26
- // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
27
-
28
- // This file relies on the fact that the following declarations have been made
29
- // in runtime.js:
30
- // const $Array = global.Array;
31
-
32
- // -------------------------------------------------------------------
33
-
34
- // Global list of arrays visited during toString, toLocaleString and
35
- // join invocations.
36
- var visited_arrays = new $Array();
37
-
38
-
39
- // Gets a sorted array of array keys. Useful for operations on sparse
40
- // arrays. Dupes have not been removed.
41
- function GetSortedArrayKeys(array, intervals) {
42
- var length = intervals.length;
43
- var keys = [];
44
- for (var k = 0; k < length; k++) {
45
- var key = intervals[k];
46
- if (key < 0) {
47
- var j = -1 - key;
48
- var limit = j + intervals[++k];
49
- for (; j < limit; j++) {
50
- var e = array[j];
51
- if (!IS_UNDEFINED(e) || j in array) {
52
- keys.push(j);
53
- }
54
- }
55
- } else {
56
- // The case where key is undefined also ends here.
57
- if (!IS_UNDEFINED(key)) {
58
- var e = array[key];
59
- if (!IS_UNDEFINED(e) || key in array) {
60
- keys.push(key);
61
- }
62
- }
63
- }
64
- }
65
- keys.sort(function(a, b) { return a - b; });
66
- return keys;
67
- }
68
-
69
-
70
- // Optimized for sparse arrays if separator is ''.
71
- function SparseJoin(array, len, convert) {
72
- var keys = GetSortedArrayKeys(array, %GetArrayKeys(array, len));
73
- var last_key = -1;
74
- var keys_length = keys.length;
75
-
76
- var elements = new $Array(keys_length);
77
- var elements_length = 0;
78
-
79
- for (var i = 0; i < keys_length; i++) {
80
- var key = keys[i];
81
- if (key != last_key) {
82
- var e = array[key];
83
- if (!IS_STRING(e)) e = convert(e);
84
- elements[elements_length++] = e;
85
- last_key = key;
86
- }
87
- }
88
- return %StringBuilderConcat(elements, elements_length, '');
89
- }
90
-
91
-
92
- function UseSparseVariant(object, length, is_array) {
93
- return is_array &&
94
- length > 1000 &&
95
- (!%_IsSmi(length) ||
96
- %EstimateNumberOfElements(object) < (length >> 2));
97
- }
98
-
99
-
100
- function Join(array, length, separator, convert) {
101
- if (length == 0) return '';
102
-
103
- var is_array = IS_ARRAY(array);
104
-
105
- if (is_array) {
106
- // If the array is cyclic, return the empty string for already
107
- // visited arrays.
108
- if (!%PushIfAbsent(visited_arrays, array)) return '';
109
- }
110
-
111
- // Attempt to convert the elements.
112
- try {
113
- if (UseSparseVariant(array, length, is_array) && (separator.length == 0)) {
114
- return SparseJoin(array, length, convert);
115
- }
116
-
117
- // Fast case for one-element arrays.
118
- if (length == 1) {
119
- var e = array[0];
120
- if (!IS_UNDEFINED(e) || (0 in array)) {
121
- if (IS_STRING(e)) return e;
122
- return convert(e);
123
- }
124
- }
125
-
126
- // Construct an array for the elements.
127
- var elements;
128
- var elements_length = 0;
129
-
130
- // We pull the empty separator check outside the loop for speed!
131
- if (separator.length == 0) {
132
- elements = new $Array(length);
133
- for (var i = 0; i < length; i++) {
134
- var e = array[i];
135
- if (!IS_UNDEFINED(e) || (i in array)) {
136
- if (!IS_STRING(e)) e = convert(e);
137
- elements[elements_length++] = e;
138
- }
139
- }
140
- } else {
141
- elements = new $Array(length << 1);
142
- for (var i = 0; i < length; i++) {
143
- var e = array[i];
144
- if (i != 0) elements[elements_length++] = separator;
145
- if (!IS_UNDEFINED(e) || (i in array)) {
146
- if (!IS_STRING(e)) e = convert(e);
147
- elements[elements_length++] = e;
148
- }
149
- }
150
- }
151
- return %StringBuilderConcat(elements, elements_length, '');
152
- } finally {
153
- // Make sure to pop the visited array no matter what happens.
154
- if (is_array) visited_arrays.pop();
155
- }
156
- }
157
-
158
-
159
- function ConvertToString(e) {
160
- if (e == null) return '';
161
- else return ToString(e);
162
- }
163
-
164
-
165
- function ConvertToLocaleString(e) {
166
- if (e == null) {
167
- return '';
168
- } else {
169
- // e_obj's toLocaleString might be overwritten, check if it is a function.
170
- // Call ToString if toLocaleString is not a function.
171
- // See issue 877615.
172
- var e_obj = ToObject(e);
173
- if (IS_FUNCTION(e_obj.toLocaleString))
174
- return ToString(e_obj.toLocaleString());
175
- else
176
- return ToString(e);
177
- }
178
- }
179
-
180
-
181
- // This function implements the optimized splice implementation that can use
182
- // special array operations to handle sparse arrays in a sensible fashion.
183
- function SmartSlice(array, start_i, del_count, len, deleted_elements) {
184
- // Move deleted elements to a new array (the return value from splice).
185
- // Intervals array can contain keys and intervals. See comment in Concat.
186
- var intervals = %GetArrayKeys(array, start_i + del_count);
187
- var length = intervals.length;
188
- for (var k = 0; k < length; k++) {
189
- var key = intervals[k];
190
- if (key < 0) {
191
- var j = -1 - key;
192
- var interval_limit = j + intervals[++k];
193
- if (j < start_i) {
194
- j = start_i;
195
- }
196
- for (; j < interval_limit; j++) {
197
- // ECMA-262 15.4.4.12 line 10. The spec could also be
198
- // interpreted such that %HasLocalProperty would be the
199
- // appropriate test. We follow KJS in consulting the
200
- // prototype.
201
- var current = array[j];
202
- if (!IS_UNDEFINED(current) || j in array) {
203
- deleted_elements[j - start_i] = current;
204
- }
205
- }
206
- } else {
207
- if (!IS_UNDEFINED(key)) {
208
- if (key >= start_i) {
209
- // ECMA-262 15.4.4.12 line 10. The spec could also be
210
- // interpreted such that %HasLocalProperty would be the
211
- // appropriate test. We follow KJS in consulting the
212
- // prototype.
213
- var current = array[key];
214
- if (!IS_UNDEFINED(current) || key in array) {
215
- deleted_elements[key - start_i] = current;
216
- }
217
- }
218
- }
219
- }
220
- }
221
- }
222
-
223
-
224
- // This function implements the optimized splice implementation that can use
225
- // special array operations to handle sparse arrays in a sensible fashion.
226
- function SmartMove(array, start_i, del_count, len, num_additional_args) {
227
- // Move data to new array.
228
- var new_array = new $Array(len - del_count + num_additional_args);
229
- var intervals = %GetArrayKeys(array, len);
230
- var length = intervals.length;
231
- for (var k = 0; k < length; k++) {
232
- var key = intervals[k];
233
- if (key < 0) {
234
- var j = -1 - key;
235
- var interval_limit = j + intervals[++k];
236
- while (j < start_i && j < interval_limit) {
237
- // The spec could also be interpreted such that
238
- // %HasLocalProperty would be the appropriate test. We follow
239
- // KJS in consulting the prototype.
240
- var current = array[j];
241
- if (!IS_UNDEFINED(current) || j in array) {
242
- new_array[j] = current;
243
- }
244
- j++;
245
- }
246
- j = start_i + del_count;
247
- while (j < interval_limit) {
248
- // ECMA-262 15.4.4.12 lines 24 and 41. The spec could also be
249
- // interpreted such that %HasLocalProperty would be the
250
- // appropriate test. We follow KJS in consulting the
251
- // prototype.
252
- var current = array[j];
253
- if (!IS_UNDEFINED(current) || j in array) {
254
- new_array[j - del_count + num_additional_args] = current;
255
- }
256
- j++;
257
- }
258
- } else {
259
- if (!IS_UNDEFINED(key)) {
260
- if (key < start_i) {
261
- // The spec could also be interpreted such that
262
- // %HasLocalProperty would be the appropriate test. We follow
263
- // KJS in consulting the prototype.
264
- var current = array[key];
265
- if (!IS_UNDEFINED(current) || key in array) {
266
- new_array[key] = current;
267
- }
268
- } else if (key >= start_i + del_count) {
269
- // ECMA-262 15.4.4.12 lines 24 and 41. The spec could also
270
- // be interpreted such that %HasLocalProperty would be the
271
- // appropriate test. We follow KJS in consulting the
272
- // prototype.
273
- var current = array[key];
274
- if (!IS_UNDEFINED(current) || key in array) {
275
- new_array[key - del_count + num_additional_args] = current;
276
- }
277
- }
278
- }
279
- }
280
- }
281
- // Move contents of new_array into this array
282
- %MoveArrayContents(new_array, array);
283
- }
284
-
285
-
286
- // This is part of the old simple-minded splice. We are using it either
287
- // because the receiver is not an array (so we have no choice) or because we
288
- // know we are not deleting or moving a lot of elements.
289
- function SimpleSlice(array, start_i, del_count, len, deleted_elements) {
290
- for (var i = 0; i < del_count; i++) {
291
- var index = start_i + i;
292
- // The spec could also be interpreted such that %HasLocalProperty
293
- // would be the appropriate test. We follow KJS in consulting the
294
- // prototype.
295
- var current = array[index];
296
- if (!IS_UNDEFINED(current) || index in array)
297
- deleted_elements[i] = current;
298
- }
299
- }
300
-
301
-
302
- function SimpleMove(array, start_i, del_count, len, num_additional_args) {
303
- if (num_additional_args !== del_count) {
304
- // Move the existing elements after the elements to be deleted
305
- // to the right position in the resulting array.
306
- if (num_additional_args > del_count) {
307
- for (var i = len - del_count; i > start_i; i--) {
308
- var from_index = i + del_count - 1;
309
- var to_index = i + num_additional_args - 1;
310
- // The spec could also be interpreted such that
311
- // %HasLocalProperty would be the appropriate test. We follow
312
- // KJS in consulting the prototype.
313
- var current = array[from_index];
314
- if (!IS_UNDEFINED(current) || from_index in array) {
315
- array[to_index] = current;
316
- } else {
317
- delete array[to_index];
318
- }
319
- }
320
- } else {
321
- for (var i = start_i; i < len - del_count; i++) {
322
- var from_index = i + del_count;
323
- var to_index = i + num_additional_args;
324
- // The spec could also be interpreted such that
325
- // %HasLocalProperty would be the appropriate test. We follow
326
- // KJS in consulting the prototype.
327
- var current = array[from_index];
328
- if (!IS_UNDEFINED(current) || from_index in array) {
329
- array[to_index] = current;
330
- } else {
331
- delete array[to_index];
332
- }
333
- }
334
- for (var i = len; i > len - del_count + num_additional_args; i--) {
335
- delete array[i - 1];
336
- }
337
- }
338
- }
339
- }
340
-
341
-
342
- // -------------------------------------------------------------------
343
-
344
-
345
- function ArrayToString() {
346
- if (!IS_ARRAY(this)) {
347
- throw new $TypeError('Array.prototype.toString is not generic');
348
- }
349
- return Join(this, this.length, ',', ConvertToString);
350
- }
351
-
352
-
353
- function ArrayToLocaleString() {
354
- if (!IS_ARRAY(this)) {
355
- throw new $TypeError('Array.prototype.toString is not generic');
356
- }
357
- return Join(this, this.length, ',', ConvertToLocaleString);
358
- }
359
-
360
-
361
- function ArrayJoin(separator) {
362
- if (IS_UNDEFINED(separator)) {
363
- separator = ',';
364
- } else if (!IS_STRING(separator)) {
365
- separator = ToString(separator);
366
- }
367
- var length = TO_UINT32(this.length);
368
- return Join(this, length, separator, ConvertToString);
369
- }
370
-
371
-
372
- // Removes the last element from the array and returns it. See
373
- // ECMA-262, section 15.4.4.6.
374
- function ArrayPop() {
375
- var n = TO_UINT32(this.length);
376
- if (n == 0) {
377
- this.length = n;
378
- return;
379
- }
380
- n--;
381
- var value = this[n];
382
- this.length = n;
383
- delete this[n];
384
- return value;
385
- }
386
-
387
-
388
- // Appends the arguments to the end of the array and returns the new
389
- // length of the array. See ECMA-262, section 15.4.4.7.
390
- function ArrayPush() {
391
- var n = TO_UINT32(this.length);
392
- var m = %_ArgumentsLength();
393
- for (var i = 0; i < m; i++) {
394
- this[i+n] = %_Arguments(i);
395
- }
396
- this.length = n + m;
397
- return this.length;
398
- }
399
-
400
-
401
- function ArrayConcat(arg1) { // length == 1
402
- // TODO: can we just use arguments?
403
- var arg_count = %_ArgumentsLength();
404
- var arrays = new $Array(1 + arg_count);
405
- arrays[0] = this;
406
- for (var i = 0; i < arg_count; i++) {
407
- arrays[i + 1] = %_Arguments(i);
408
- }
409
-
410
- return %ArrayConcat(arrays);
411
- }
412
-
413
-
414
- // For implementing reverse() on large, sparse arrays.
415
- function SparseReverse(array, len) {
416
- var keys = GetSortedArrayKeys(array, %GetArrayKeys(array, len));
417
- var high_counter = keys.length - 1;
418
- var low_counter = 0;
419
- while (low_counter <= high_counter) {
420
- var i = keys[low_counter];
421
- var j = keys[high_counter];
422
-
423
- var j_complement = len - j - 1;
424
- var low, high;
425
-
426
- if (j_complement <= i) {
427
- high = j;
428
- while (keys[--high_counter] == j);
429
- low = j_complement;
430
- }
431
- if (j_complement >= i) {
432
- low = i;
433
- while (keys[++low_counter] == i);
434
- high = len - i - 1;
435
- }
436
-
437
- var current_i = array[low];
438
- if (!IS_UNDEFINED(current_i) || low in array) {
439
- var current_j = array[high];
440
- if (!IS_UNDEFINED(current_j) || high in array) {
441
- array[low] = current_j;
442
- array[high] = current_i;
443
- } else {
444
- array[high] = current_i;
445
- delete array[low];
446
- }
447
- } else {
448
- var current_j = array[high];
449
- if (!IS_UNDEFINED(current_j) || high in array) {
450
- array[low] = current_j;
451
- delete array[high];
452
- }
453
- }
454
- }
455
- }
456
-
457
-
458
- function ArrayReverse() {
459
- var j = TO_UINT32(this.length) - 1;
460
-
461
- if (UseSparseVariant(this, j, IS_ARRAY(this))) {
462
- SparseReverse(this, j+1);
463
- return this;
464
- }
465
-
466
- for (var i = 0; i < j; i++, j--) {
467
- var current_i = this[i];
468
- if (!IS_UNDEFINED(current_i) || i in this) {
469
- var current_j = this[j];
470
- if (!IS_UNDEFINED(current_j) || j in this) {
471
- this[i] = current_j;
472
- this[j] = current_i;
473
- } else {
474
- this[j] = current_i;
475
- delete this[i];
476
- }
477
- } else {
478
- var current_j = this[j];
479
- if (!IS_UNDEFINED(current_j) || j in this) {
480
- this[i] = current_j;
481
- delete this[j];
482
- }
483
- }
484
- }
485
- return this;
486
- }
487
-
488
-
489
- function ArrayShift() {
490
- var len = TO_UINT32(this.length);
491
-
492
- if (len === 0) {
493
- this.length = 0;
494
- return;
495
- }
496
-
497
- var first = this[0];
498
-
499
- if (IS_ARRAY(this))
500
- SmartMove(this, 0, 1, len, 0);
501
- else
502
- SimpleMove(this, 0, 1, len, 0);
503
-
504
- this.length = len - 1;
505
-
506
- return first;
507
- }
508
-
509
-
510
- function ArrayUnshift(arg1) { // length == 1
511
- var len = TO_UINT32(this.length);
512
- var num_arguments = %_ArgumentsLength();
513
-
514
- if (IS_ARRAY(this))
515
- SmartMove(this, 0, 0, len, num_arguments);
516
- else
517
- SimpleMove(this, 0, 0, len, num_arguments);
518
-
519
- for (var i = 0; i < num_arguments; i++) {
520
- this[i] = %_Arguments(i);
521
- }
522
-
523
- this.length = len + num_arguments;
524
-
525
- return len + num_arguments;
526
- }
527
-
528
-
529
- function ArraySlice(start, end) {
530
- var len = TO_UINT32(this.length);
531
- var start_i = TO_INTEGER(start);
532
- var end_i = len;
533
-
534
- if (end !== void 0) end_i = TO_INTEGER(end);
535
-
536
- if (start_i < 0) {
537
- start_i += len;
538
- if (start_i < 0) start_i = 0;
539
- } else {
540
- if (start_i > len) start_i = len;
541
- }
542
-
543
- if (end_i < 0) {
544
- end_i += len;
545
- if (end_i < 0) end_i = 0;
546
- } else {
547
- if (end_i > len) end_i = len;
548
- }
549
-
550
- var result = [];
551
-
552
- if (end_i < start_i) return result;
553
-
554
- if (IS_ARRAY(this)) {
555
- SmartSlice(this, start_i, end_i - start_i, len, result);
556
- } else {
557
- SimpleSlice(this, start_i, end_i - start_i, len, result);
558
- }
559
-
560
- result.length = end_i - start_i;
561
-
562
- return result;
563
- }
564
-
565
-
566
- function ArraySplice(start, delete_count) {
567
- var num_arguments = %_ArgumentsLength();
568
-
569
- // SpiderMonkey and JSC return undefined in the case where no
570
- // arguments are given instead of using the implicit undefined
571
- // arguments. This does not follow ECMA-262, but we do the same for
572
- // compatibility.
573
- // TraceMonkey follows ECMA-262 though.
574
- if (num_arguments == 0) return;
575
-
576
- var len = TO_UINT32(this.length);
577
- var start_i = TO_INTEGER(start);
578
-
579
- if (start_i < 0) {
580
- start_i += len;
581
- if (start_i < 0) start_i = 0;
582
- } else {
583
- if (start_i > len) start_i = len;
584
- }
585
-
586
- // SpiderMonkey, TraceMonkey and JSC treat the case where no delete count is
587
- // given differently from when an undefined delete count is given.
588
- // This does not follow ECMA-262, but we do the same for
589
- // compatibility.
590
- var del_count = 0;
591
- if (num_arguments > 1) {
592
- del_count = TO_INTEGER(delete_count);
593
- if (del_count < 0) del_count = 0;
594
- if (del_count > len - start_i) del_count = len - start_i;
595
- } else {
596
- del_count = len - start_i;
597
- }
598
-
599
- var deleted_elements = [];
600
- deleted_elements.length = del_count;
601
-
602
- // Number of elements to add.
603
- var num_additional_args = 0;
604
- if (num_arguments > 2) {
605
- num_additional_args = num_arguments - 2;
606
- }
607
-
608
- var use_simple_splice = true;
609
-
610
- if (IS_ARRAY(this) && num_additional_args !== del_count) {
611
- // If we are only deleting/moving a few things near the end of the
612
- // array then the simple version is going to be faster, because it
613
- // doesn't touch most of the array.
614
- var estimated_non_hole_elements = %EstimateNumberOfElements(this);
615
- if (len > 20 && (estimated_non_hole_elements >> 2) < (len - start_i)) {
616
- use_simple_splice = false;
617
- }
618
- }
619
-
620
- if (use_simple_splice) {
621
- SimpleSlice(this, start_i, del_count, len, deleted_elements);
622
- SimpleMove(this, start_i, del_count, len, num_additional_args);
623
- } else {
624
- SmartSlice(this, start_i, del_count, len, deleted_elements);
625
- SmartMove(this, start_i, del_count, len, num_additional_args);
626
- }
627
-
628
- // Insert the arguments into the resulting array in
629
- // place of the deleted elements.
630
- var i = start_i;
631
- var arguments_index = 2;
632
- var arguments_length = %_ArgumentsLength();
633
- while (arguments_index < arguments_length) {
634
- this[i++] = %_Arguments(arguments_index++);
635
- }
636
- this.length = len - del_count + num_additional_args;
637
-
638
- // Return the deleted elements.
639
- return deleted_elements;
640
- }
641
-
642
-
643
- function ArraySort(comparefn) {
644
- // In-place QuickSort algorithm.
645
- // For short (length <= 22) arrays, insertion sort is used for efficiency.
646
-
647
- if (!IS_FUNCTION(comparefn)) {
648
- comparefn = function (x, y) {
649
- if (x === y) return 0;
650
- if (%_IsSmi(x) && %_IsSmi(y)) {
651
- return %SmiLexicographicCompare(x, y);
652
- }
653
- x = ToString(x);
654
- y = ToString(y);
655
- if (x == y) return 0;
656
- else return x < y ? -1 : 1;
657
- };
658
- }
659
- var global_receiver = %GetGlobalReceiver();
660
-
661
- function InsertionSort(a, from, to) {
662
- for (var i = from + 1; i < to; i++) {
663
- var element = a[i];
664
- for (var j = i - 1; j >= from; j--) {
665
- var tmp = a[j];
666
- var order = %_CallFunction(global_receiver, tmp, element, comparefn);
667
- if (order > 0) {
668
- a[j + 1] = tmp;
669
- } else {
670
- break;
671
- }
672
- }
673
- a[j + 1] = element;
674
- }
675
- }
676
-
677
- function QuickSort(a, from, to) {
678
- // Insertion sort is faster for short arrays.
679
- if (to - from <= 22) {
680
- InsertionSort(a, from, to);
681
- return;
682
- }
683
- var pivot_index = $floor($random() * (to - from)) + from;
684
- var pivot = a[pivot_index];
685
- // Issue 95: Keep the pivot element out of the comparisons to avoid
686
- // infinite recursion if comparefn(pivot, pivot) != 0.
687
- %_SwapElements(a, from, pivot_index);
688
- var low_end = from; // Upper bound of the elements lower than pivot.
689
- var high_start = to; // Lower bound of the elements greater than pivot.
690
- // From low_end to i are elements equal to pivot.
691
- // From i to high_start are elements that haven't been compared yet.
692
- for (var i = from + 1; i < high_start; ) {
693
- var element = a[i];
694
- var order = %_CallFunction(global_receiver, element, pivot, comparefn);
695
- if (order < 0) {
696
- %_SwapElements(a, i, low_end);
697
- i++;
698
- low_end++;
699
- } else if (order > 0) {
700
- high_start--;
701
- %_SwapElements(a, i, high_start);
702
- } else { // order == 0
703
- i++;
704
- }
705
- }
706
- QuickSort(a, from, low_end);
707
- QuickSort(a, high_start, to);
708
- }
709
-
710
- // Copies elements in the range 0..length from obj's prototype chain
711
- // to obj itself, if obj has holes. Returns one more than the maximal index
712
- // of a prototype property.
713
- function CopyFromPrototype(obj, length) {
714
- var max = 0;
715
- for (var proto = obj.__proto__; proto; proto = proto.__proto__) {
716
- var indices = %GetArrayKeys(proto, length);
717
- if (indices.length > 0) {
718
- if (indices[0] == -1) {
719
- // It's an interval.
720
- var proto_length = indices[1];
721
- for (var i = 0; i < proto_length; i++) {
722
- if (!obj.hasOwnProperty(i) && proto.hasOwnProperty(i)) {
723
- obj[i] = proto[i];
724
- if (i >= max) { max = i + 1; }
725
- }
726
- }
727
- } else {
728
- for (var i = 0; i < indices.length; i++) {
729
- var index = indices[i];
730
- if (!IS_UNDEFINED(index) &&
731
- !obj.hasOwnProperty(index) && proto.hasOwnProperty(index)) {
732
- obj[index] = proto[index];
733
- if (index >= max) { max = index + 1; }
734
- }
735
- }
736
- }
737
- }
738
- }
739
- return max;
740
- }
741
-
742
- // Set a value of "undefined" on all indices in the range from..to
743
- // where a prototype of obj has an element. I.e., shadow all prototype
744
- // elements in that range.
745
- function ShadowPrototypeElements(obj, from, to) {
746
- for (var proto = obj.__proto__; proto; proto = proto.__proto__) {
747
- var indices = %GetArrayKeys(proto, to);
748
- if (indices.length > 0) {
749
- if (indices[0] == -1) {
750
- // It's an interval.
751
- var proto_length = indices[1];
752
- for (var i = from; i < proto_length; i++) {
753
- if (proto.hasOwnProperty(i)) {
754
- obj[i] = void 0;
755
- }
756
- }
757
- } else {
758
- for (var i = 0; i < indices.length; i++) {
759
- var index = indices[i];
760
- if (!IS_UNDEFINED(index) && from <= index &&
761
- proto.hasOwnProperty(index)) {
762
- obj[index] = void 0;
763
- }
764
- }
765
- }
766
- }
767
- }
768
- }
769
-
770
- function SafeRemoveArrayHoles(obj) {
771
- // Copy defined elements from the end to fill in all holes and undefineds
772
- // in the beginning of the array. Write undefineds and holes at the end
773
- // after loop is finished.
774
- var first_undefined = 0;
775
- var last_defined = length - 1;
776
- var num_holes = 0;
777
- while (first_undefined < last_defined) {
778
- // Find first undefined element.
779
- while (first_undefined < last_defined &&
780
- !IS_UNDEFINED(obj[first_undefined])) {
781
- first_undefined++;
782
- }
783
- // Maintain the invariant num_holes = the number of holes in the original
784
- // array with indices <= first_undefined or > last_defined.
785
- if (!obj.hasOwnProperty(first_undefined)) {
786
- num_holes++;
787
- }
788
-
789
- // Find last defined element.
790
- while (first_undefined < last_defined &&
791
- IS_UNDEFINED(obj[last_defined])) {
792
- if (!obj.hasOwnProperty(last_defined)) {
793
- num_holes++;
794
- }
795
- last_defined--;
796
- }
797
- if (first_undefined < last_defined) {
798
- // Fill in hole or undefined.
799
- obj[first_undefined] = obj[last_defined];
800
- obj[last_defined] = void 0;
801
- }
802
- }
803
- // If there were any undefineds in the entire array, first_undefined
804
- // points to one past the last defined element. Make this true if
805
- // there were no undefineds, as well, so that first_undefined == number
806
- // of defined elements.
807
- if (!IS_UNDEFINED(obj[first_undefined])) first_undefined++;
808
- // Fill in the undefineds and the holes. There may be a hole where
809
- // an undefined should be and vice versa.
810
- var i;
811
- for (i = first_undefined; i < length - num_holes; i++) {
812
- obj[i] = void 0;
813
- }
814
- for (i = length - num_holes; i < length; i++) {
815
- // For compatability with Webkit, do not expose elements in the prototype.
816
- if (i in obj.__proto__) {
817
- obj[i] = void 0;
818
- } else {
819
- delete obj[i];
820
- }
821
- }
822
-
823
- // Return the number of defined elements.
824
- return first_undefined;
825
- }
826
-
827
- var length = TO_UINT32(this.length);
828
- if (length < 2) return this;
829
-
830
- var is_array = IS_ARRAY(this);
831
- var max_prototype_element;
832
- if (!is_array) {
833
- // For compatibility with JSC, we also sort elements inherited from
834
- // the prototype chain on non-Array objects.
835
- // We do this by copying them to this object and sorting only
836
- // local elements. This is not very efficient, but sorting with
837
- // inherited elements happens very, very rarely, if at all.
838
- // The specification allows "implementation dependent" behavior
839
- // if an element on the prototype chain has an element that
840
- // might interact with sorting.
841
- max_prototype_element = CopyFromPrototype(this, length);
842
- }
843
-
844
- var num_non_undefined = %RemoveArrayHoles(this, length);
845
- if (num_non_undefined == -1) {
846
- // There were indexed accessors in the array. Move array holes and
847
- // undefineds to the end using a Javascript function that is safe
848
- // in the presence of accessors.
849
- num_non_undefined = SafeRemoveArrayHoles(this);
850
- }
851
-
852
- QuickSort(this, 0, num_non_undefined);
853
-
854
- if (!is_array && (num_non_undefined + 1 < max_prototype_element)) {
855
- // For compatibility with JSC, we shadow any elements in the prototype
856
- // chain that has become exposed by sort moving a hole to its position.
857
- ShadowPrototypeElements(this, num_non_undefined, max_prototype_element);
858
- }
859
-
860
- return this;
861
- }
862
-
863
-
864
- // The following functions cannot be made efficient on sparse arrays while
865
- // preserving the semantics, since the calls to the receiver function can add
866
- // or delete elements from the array.
867
- function ArrayFilter(f, receiver) {
868
- if (!IS_FUNCTION(f)) {
869
- throw MakeTypeError('called_non_callable', [ f ]);
870
- }
871
- // Pull out the length so that modifications to the length in the
872
- // loop will not affect the looping.
873
- var length = this.length;
874
- var result = [];
875
- var result_length = 0;
876
- for (var i = 0; i < length; i++) {
877
- var current = this[i];
878
- if (!IS_UNDEFINED(current) || i in this) {
879
- if (f.call(receiver, current, i, this)) result[result_length++] = current;
880
- }
881
- }
882
- return result;
883
- }
884
-
885
-
886
- function ArrayForEach(f, receiver) {
887
- if (!IS_FUNCTION(f)) {
888
- throw MakeTypeError('called_non_callable', [ f ]);
889
- }
890
- // Pull out the length so that modifications to the length in the
891
- // loop will not affect the looping.
892
- var length = TO_UINT32(this.length);
893
- for (var i = 0; i < length; i++) {
894
- var current = this[i];
895
- if (!IS_UNDEFINED(current) || i in this) {
896
- f.call(receiver, current, i, this);
897
- }
898
- }
899
- }
900
-
901
-
902
- // Executes the function once for each element present in the
903
- // array until it finds one where callback returns true.
904
- function ArraySome(f, receiver) {
905
- if (!IS_FUNCTION(f)) {
906
- throw MakeTypeError('called_non_callable', [ f ]);
907
- }
908
- // Pull out the length so that modifications to the length in the
909
- // loop will not affect the looping.
910
- var length = TO_UINT32(this.length);
911
- for (var i = 0; i < length; i++) {
912
- var current = this[i];
913
- if (!IS_UNDEFINED(current) || i in this) {
914
- if (f.call(receiver, current, i, this)) return true;
915
- }
916
- }
917
- return false;
918
- }
919
-
920
-
921
- function ArrayEvery(f, receiver) {
922
- if (!IS_FUNCTION(f)) {
923
- throw MakeTypeError('called_non_callable', [ f ]);
924
- }
925
- // Pull out the length so that modifications to the length in the
926
- // loop will not affect the looping.
927
- var length = TO_UINT32(this.length);
928
- for (var i = 0; i < length; i++) {
929
- var current = this[i];
930
- if (!IS_UNDEFINED(current) || i in this) {
931
- if (!f.call(receiver, current, i, this)) return false;
932
- }
933
- }
934
- return true;
935
- }
936
-
937
- function ArrayMap(f, receiver) {
938
- if (!IS_FUNCTION(f)) {
939
- throw MakeTypeError('called_non_callable', [ f ]);
940
- }
941
- // Pull out the length so that modifications to the length in the
942
- // loop will not affect the looping.
943
- var length = TO_UINT32(this.length);
944
- var result = new $Array(length);
945
- for (var i = 0; i < length; i++) {
946
- var current = this[i];
947
- if (!IS_UNDEFINED(current) || i in this) {
948
- result[i] = f.call(receiver, current, i, this);
949
- }
950
- }
951
- return result;
952
- }
953
-
954
-
955
- function ArrayIndexOf(element, index) {
956
- var length = this.length;
957
- if (IS_UNDEFINED(index)) {
958
- index = 0;
959
- } else {
960
- index = TO_INTEGER(index);
961
- // If index is negative, index from the end of the array.
962
- if (index < 0) index = length + index;
963
- // If index is still negative, search the entire array.
964
- if (index < 0) index = 0;
965
- }
966
- if (!IS_UNDEFINED(element)) {
967
- for (var i = index; i < length; i++) {
968
- if (this[i] === element) return i;
969
- }
970
- return -1;
971
- }
972
- // Lookup through the array.
973
- for (var i = index; i < length; i++) {
974
- if (IS_UNDEFINED(this[i]) && i in this) {
975
- return i;
976
- }
977
- }
978
- return -1;
979
- }
980
-
981
-
982
- function ArrayLastIndexOf(element, index) {
983
- var length = this.length;
984
- if (%_ArgumentsLength() < 2) {
985
- index = length - 1;
986
- } else {
987
- index = TO_INTEGER(index);
988
- // If index is negative, index from end of the array.
989
- if (index < 0) index = length + index;
990
- // If index is still negative, do not search the array.
991
- if (index < 0) index = -1;
992
- else if (index >= length) index = length - 1;
993
- }
994
- // Lookup through the array.
995
- if (!IS_UNDEFINED(element)) {
996
- for (var i = index; i >= 0; i--) {
997
- if (this[i] === element) return i;
998
- }
999
- return -1;
1000
- }
1001
- for (var i = index; i >= 0; i--) {
1002
- if (IS_UNDEFINED(this[i]) && i in this) {
1003
- return i;
1004
- }
1005
- }
1006
- return -1;
1007
- }
1008
-
1009
-
1010
- function ArrayReduce(callback, current) {
1011
- if (!IS_FUNCTION(callback)) {
1012
- throw MakeTypeError('called_non_callable', [callback]);
1013
- }
1014
- // Pull out the length so that modifications to the length in the
1015
- // loop will not affect the looping.
1016
- var length = this.length;
1017
- var i = 0;
1018
-
1019
- find_initial: if (%_ArgumentsLength() < 2) {
1020
- for (; i < length; i++) {
1021
- current = this[i];
1022
- if (!IS_UNDEFINED(current) || i in this) {
1023
- i++;
1024
- break find_initial;
1025
- }
1026
- }
1027
- throw MakeTypeError('reduce_no_initial', []);
1028
- }
1029
-
1030
- for (; i < length; i++) {
1031
- var element = this[i];
1032
- if (!IS_UNDEFINED(element) || i in this) {
1033
- current = callback.call(null, current, element, i, this);
1034
- }
1035
- }
1036
- return current;
1037
- }
1038
-
1039
- function ArrayReduceRight(callback, current) {
1040
- if (!IS_FUNCTION(callback)) {
1041
- throw MakeTypeError('called_non_callable', [callback]);
1042
- }
1043
- var i = this.length - 1;
1044
-
1045
- find_initial: if (%_ArgumentsLength() < 2) {
1046
- for (; i >= 0; i--) {
1047
- current = this[i];
1048
- if (!IS_UNDEFINED(current) || i in this) {
1049
- i--;
1050
- break find_initial;
1051
- }
1052
- }
1053
- throw MakeTypeError('reduce_no_initial', []);
1054
- }
1055
-
1056
- for (; i >= 0; i--) {
1057
- var element = this[i];
1058
- if (!IS_UNDEFINED(element) || i in this) {
1059
- current = callback.call(null, current, element, i, this);
1060
- }
1061
- }
1062
- return current;
1063
- }
1064
-
1065
- // ES5, 15.4.3.2
1066
- function ArrayIsArray(obj) {
1067
- return IS_ARRAY(obj);
1068
- }
1069
-
1070
-
1071
- // -------------------------------------------------------------------
1072
- function SetupArray() {
1073
- // Setup non-enumerable constructor property on the Array.prototype
1074
- // object.
1075
- %SetProperty($Array.prototype, "constructor", $Array, DONT_ENUM);
1076
-
1077
- // Setup non-enumerable functions on the Array object.
1078
- InstallFunctions($Array, DONT_ENUM, $Array(
1079
- "isArray", ArrayIsArray
1080
- ));
1081
-
1082
- var specialFunctions = %SpecialArrayFunctions({});
1083
-
1084
- function getFunction(name, jsBuiltin, len) {
1085
- var f = jsBuiltin;
1086
- if (specialFunctions.hasOwnProperty(name)) {
1087
- f = specialFunctions[name];
1088
- }
1089
- if (!IS_UNDEFINED(len)) {
1090
- %FunctionSetLength(f, len);
1091
- }
1092
- return f;
1093
- }
1094
-
1095
- // Setup non-enumerable functions of the Array.prototype object and
1096
- // set their names.
1097
- // Manipulate the length of some of the functions to meet
1098
- // expectations set by ECMA-262 or Mozilla.
1099
- InstallFunctionsOnHiddenPrototype($Array.prototype, DONT_ENUM, $Array(
1100
- "toString", getFunction("toString", ArrayToString),
1101
- "toLocaleString", getFunction("toLocaleString", ArrayToLocaleString),
1102
- "join", getFunction("join", ArrayJoin),
1103
- "pop", getFunction("pop", ArrayPop),
1104
- "push", getFunction("push", ArrayPush, 1),
1105
- "concat", getFunction("concat", ArrayConcat, 1),
1106
- "reverse", getFunction("reverse", ArrayReverse),
1107
- "shift", getFunction("shift", ArrayShift),
1108
- "unshift", getFunction("unshift", ArrayUnshift, 1),
1109
- "slice", getFunction("slice", ArraySlice, 2),
1110
- "splice", getFunction("splice", ArraySplice, 2),
1111
- "sort", getFunction("sort", ArraySort),
1112
- "filter", getFunction("filter", ArrayFilter, 1),
1113
- "forEach", getFunction("forEach", ArrayForEach, 1),
1114
- "some", getFunction("some", ArraySome, 1),
1115
- "every", getFunction("every", ArrayEvery, 1),
1116
- "map", getFunction("map", ArrayMap, 1),
1117
- "indexOf", getFunction("indexOf", ArrayIndexOf, 1),
1118
- "lastIndexOf", getFunction("lastIndexOf", ArrayLastIndexOf, 1),
1119
- "reduce", getFunction("reduce", ArrayReduce, 1),
1120
- "reduceRight", getFunction("reduceRight", ArrayReduceRight, 1)
1121
- ));
1122
-
1123
- %FinishArrayPrototypeSetup($Array.prototype);
1124
- }
1125
-
1126
-
1127
- SetupArray();