therubyracer-heroku 0.8.1.pre2 → 0.8.1.pre3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (1239) hide show
  1. data/ext/v8/upstream/build/v8/libv8.a +0 -0
  2. data/lib/v8/version.rb +1 -1
  3. metadata +3 -1238
  4. data/ext/v8/upstream/build/scons/CHANGES.txt +0 -5183
  5. data/ext/v8/upstream/build/scons/LICENSE.txt +0 -20
  6. data/ext/v8/upstream/build/scons/MANIFEST +0 -202
  7. data/ext/v8/upstream/build/scons/PKG-INFO +0 -13
  8. data/ext/v8/upstream/build/scons/README.txt +0 -273
  9. data/ext/v8/upstream/build/scons/RELEASE.txt +0 -1040
  10. data/ext/v8/upstream/build/scons/build/lib/SCons/Action.py +0 -1256
  11. data/ext/v8/upstream/build/scons/build/lib/SCons/Builder.py +0 -868
  12. data/ext/v8/upstream/build/scons/build/lib/SCons/CacheDir.py +0 -217
  13. data/ext/v8/upstream/build/scons/build/lib/SCons/Conftest.py +0 -794
  14. data/ext/v8/upstream/build/scons/build/lib/SCons/Debug.py +0 -237
  15. data/ext/v8/upstream/build/scons/build/lib/SCons/Defaults.py +0 -485
  16. data/ext/v8/upstream/build/scons/build/lib/SCons/Environment.py +0 -2327
  17. data/ext/v8/upstream/build/scons/build/lib/SCons/Errors.py +0 -207
  18. data/ext/v8/upstream/build/scons/build/lib/SCons/Executor.py +0 -636
  19. data/ext/v8/upstream/build/scons/build/lib/SCons/Job.py +0 -435
  20. data/ext/v8/upstream/build/scons/build/lib/SCons/Memoize.py +0 -292
  21. data/ext/v8/upstream/build/scons/build/lib/SCons/Node/Alias.py +0 -153
  22. data/ext/v8/upstream/build/scons/build/lib/SCons/Node/FS.py +0 -3220
  23. data/ext/v8/upstream/build/scons/build/lib/SCons/Node/Python.py +0 -128
  24. data/ext/v8/upstream/build/scons/build/lib/SCons/Node/__init__.py +0 -1341
  25. data/ext/v8/upstream/build/scons/build/lib/SCons/Options/BoolOption.py +0 -50
  26. data/ext/v8/upstream/build/scons/build/lib/SCons/Options/EnumOption.py +0 -50
  27. data/ext/v8/upstream/build/scons/build/lib/SCons/Options/ListOption.py +0 -50
  28. data/ext/v8/upstream/build/scons/build/lib/SCons/Options/PackageOption.py +0 -50
  29. data/ext/v8/upstream/build/scons/build/lib/SCons/Options/PathOption.py +0 -76
  30. data/ext/v8/upstream/build/scons/build/lib/SCons/Options/__init__.py +0 -74
  31. data/ext/v8/upstream/build/scons/build/lib/SCons/PathList.py +0 -232
  32. data/ext/v8/upstream/build/scons/build/lib/SCons/Platform/__init__.py +0 -236
  33. data/ext/v8/upstream/build/scons/build/lib/SCons/Platform/aix.py +0 -70
  34. data/ext/v8/upstream/build/scons/build/lib/SCons/Platform/cygwin.py +0 -55
  35. data/ext/v8/upstream/build/scons/build/lib/SCons/Platform/darwin.py +0 -46
  36. data/ext/v8/upstream/build/scons/build/lib/SCons/Platform/hpux.py +0 -46
  37. data/ext/v8/upstream/build/scons/build/lib/SCons/Platform/irix.py +0 -44
  38. data/ext/v8/upstream/build/scons/build/lib/SCons/Platform/os2.py +0 -58
  39. data/ext/v8/upstream/build/scons/build/lib/SCons/Platform/posix.py +0 -264
  40. data/ext/v8/upstream/build/scons/build/lib/SCons/Platform/sunos.py +0 -50
  41. data/ext/v8/upstream/build/scons/build/lib/SCons/Platform/win32.py +0 -386
  42. data/ext/v8/upstream/build/scons/build/lib/SCons/SConf.py +0 -1038
  43. data/ext/v8/upstream/build/scons/build/lib/SCons/SConsign.py +0 -381
  44. data/ext/v8/upstream/build/scons/build/lib/SCons/Scanner/C.py +0 -132
  45. data/ext/v8/upstream/build/scons/build/lib/SCons/Scanner/D.py +0 -74
  46. data/ext/v8/upstream/build/scons/build/lib/SCons/Scanner/Dir.py +0 -111
  47. data/ext/v8/upstream/build/scons/build/lib/SCons/Scanner/Fortran.py +0 -320
  48. data/ext/v8/upstream/build/scons/build/lib/SCons/Scanner/IDL.py +0 -48
  49. data/ext/v8/upstream/build/scons/build/lib/SCons/Scanner/LaTeX.py +0 -378
  50. data/ext/v8/upstream/build/scons/build/lib/SCons/Scanner/Prog.py +0 -103
  51. data/ext/v8/upstream/build/scons/build/lib/SCons/Scanner/RC.py +0 -55
  52. data/ext/v8/upstream/build/scons/build/lib/SCons/Scanner/__init__.py +0 -415
  53. data/ext/v8/upstream/build/scons/build/lib/SCons/Script/Interactive.py +0 -386
  54. data/ext/v8/upstream/build/scons/build/lib/SCons/Script/Main.py +0 -1360
  55. data/ext/v8/upstream/build/scons/build/lib/SCons/Script/SConsOptions.py +0 -944
  56. data/ext/v8/upstream/build/scons/build/lib/SCons/Script/SConscript.py +0 -642
  57. data/ext/v8/upstream/build/scons/build/lib/SCons/Script/__init__.py +0 -414
  58. data/ext/v8/upstream/build/scons/build/lib/SCons/Sig.py +0 -63
  59. data/ext/v8/upstream/build/scons/build/lib/SCons/Subst.py +0 -911
  60. data/ext/v8/upstream/build/scons/build/lib/SCons/Taskmaster.py +0 -1030
  61. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/386asm.py +0 -61
  62. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/BitKeeper.py +0 -65
  63. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/CVS.py +0 -73
  64. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/FortranCommon.py +0 -247
  65. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/JavaCommon.py +0 -324
  66. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/MSCommon/__init__.py +0 -56
  67. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/MSCommon/arch.py +0 -61
  68. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/MSCommon/common.py +0 -210
  69. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/MSCommon/netframework.py +0 -84
  70. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/MSCommon/sdk.py +0 -321
  71. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/MSCommon/vc.py +0 -367
  72. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/MSCommon/vs.py +0 -497
  73. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/Perforce.py +0 -104
  74. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/PharLapCommon.py +0 -138
  75. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/RCS.py +0 -64
  76. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/SCCS.py +0 -64
  77. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/Subversion.py +0 -71
  78. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/__init__.py +0 -675
  79. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/aixc++.py +0 -82
  80. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/aixcc.py +0 -74
  81. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/aixf77.py +0 -80
  82. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/aixlink.py +0 -76
  83. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/applelink.py +0 -71
  84. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/ar.py +0 -63
  85. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/as.py +0 -78
  86. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/bcc32.py +0 -82
  87. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/c++.py +0 -99
  88. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/cc.py +0 -114
  89. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/cvf.py +0 -58
  90. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/default.py +0 -50
  91. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/dmd.py +0 -224
  92. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/dvi.py +0 -64
  93. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/dvipdf.py +0 -125
  94. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/dvips.py +0 -94
  95. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/f77.py +0 -62
  96. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/f90.py +0 -62
  97. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/f95.py +0 -63
  98. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/filesystem.py +0 -98
  99. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/fortran.py +0 -63
  100. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/g++.py +0 -90
  101. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/g77.py +0 -73
  102. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/gas.py +0 -53
  103. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/gcc.py +0 -80
  104. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/gfortran.py +0 -64
  105. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/gnulink.py +0 -63
  106. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/gs.py +0 -81
  107. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/hpc++.py +0 -85
  108. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/hpcc.py +0 -53
  109. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/hplink.py +0 -77
  110. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/icc.py +0 -59
  111. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/icl.py +0 -52
  112. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/ifl.py +0 -72
  113. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/ifort.py +0 -90
  114. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/ilink.py +0 -59
  115. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/ilink32.py +0 -60
  116. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/install.py +0 -229
  117. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/intelc.py +0 -490
  118. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/ipkg.py +0 -71
  119. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/jar.py +0 -110
  120. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/javac.py +0 -234
  121. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/javah.py +0 -138
  122. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/latex.py +0 -79
  123. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/lex.py +0 -99
  124. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/link.py +0 -121
  125. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/linkloc.py +0 -112
  126. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/m4.py +0 -63
  127. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/masm.py +0 -77
  128. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/midl.py +0 -90
  129. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/mingw.py +0 -159
  130. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/mslib.py +0 -64
  131. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/mslink.py +0 -266
  132. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/mssdk.py +0 -50
  133. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/msvc.py +0 -269
  134. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/msvs.py +0 -1439
  135. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/mwcc.py +0 -208
  136. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/mwld.py +0 -107
  137. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/nasm.py +0 -72
  138. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/packaging/__init__.py +0 -314
  139. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/packaging/ipk.py +0 -185
  140. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/packaging/msi.py +0 -526
  141. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/packaging/rpm.py +0 -367
  142. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/packaging/src_tarbz2.py +0 -43
  143. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/packaging/src_targz.py +0 -43
  144. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/packaging/src_zip.py +0 -43
  145. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/packaging/tarbz2.py +0 -44
  146. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/packaging/targz.py +0 -44
  147. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/packaging/zip.py +0 -44
  148. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/pdf.py +0 -78
  149. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/pdflatex.py +0 -83
  150. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/pdftex.py +0 -108
  151. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/qt.py +0 -336
  152. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/rmic.py +0 -121
  153. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/rpcgen.py +0 -70
  154. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/rpm.py +0 -132
  155. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/sgiar.py +0 -68
  156. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/sgic++.py +0 -58
  157. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/sgicc.py +0 -53
  158. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/sgilink.py +0 -63
  159. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/sunar.py +0 -67
  160. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/sunc++.py +0 -142
  161. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/suncc.py +0 -58
  162. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/sunf77.py +0 -63
  163. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/sunf90.py +0 -64
  164. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/sunf95.py +0 -64
  165. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/sunlink.py +0 -77
  166. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/swig.py +0 -186
  167. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/tar.py +0 -73
  168. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/tex.py +0 -805
  169. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/textfile.py +0 -175
  170. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/tlib.py +0 -53
  171. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/wix.py +0 -100
  172. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/yacc.py +0 -131
  173. data/ext/v8/upstream/build/scons/build/lib/SCons/Tool/zip.py +0 -100
  174. data/ext/v8/upstream/build/scons/build/lib/SCons/Util.py +0 -1645
  175. data/ext/v8/upstream/build/scons/build/lib/SCons/Variables/BoolVariable.py +0 -91
  176. data/ext/v8/upstream/build/scons/build/lib/SCons/Variables/EnumVariable.py +0 -107
  177. data/ext/v8/upstream/build/scons/build/lib/SCons/Variables/ListVariable.py +0 -139
  178. data/ext/v8/upstream/build/scons/build/lib/SCons/Variables/PackageVariable.py +0 -109
  179. data/ext/v8/upstream/build/scons/build/lib/SCons/Variables/PathVariable.py +0 -147
  180. data/ext/v8/upstream/build/scons/build/lib/SCons/Variables/__init__.py +0 -317
  181. data/ext/v8/upstream/build/scons/build/lib/SCons/Warnings.py +0 -228
  182. data/ext/v8/upstream/build/scons/build/lib/SCons/__init__.py +0 -49
  183. data/ext/v8/upstream/build/scons/build/lib/SCons/compat/__init__.py +0 -302
  184. data/ext/v8/upstream/build/scons/build/lib/SCons/compat/_scons_UserString.py +0 -98
  185. data/ext/v8/upstream/build/scons/build/lib/SCons/compat/_scons_hashlib.py +0 -91
  186. data/ext/v8/upstream/build/scons/build/lib/SCons/compat/_scons_itertools.py +0 -124
  187. data/ext/v8/upstream/build/scons/build/lib/SCons/compat/_scons_optparse.py +0 -1725
  188. data/ext/v8/upstream/build/scons/build/lib/SCons/compat/_scons_sets.py +0 -583
  189. data/ext/v8/upstream/build/scons/build/lib/SCons/compat/_scons_sets15.py +0 -176
  190. data/ext/v8/upstream/build/scons/build/lib/SCons/compat/_scons_shlex.py +0 -325
  191. data/ext/v8/upstream/build/scons/build/lib/SCons/compat/_scons_subprocess.py +0 -1296
  192. data/ext/v8/upstream/build/scons/build/lib/SCons/compat/_scons_textwrap.py +0 -382
  193. data/ext/v8/upstream/build/scons/build/lib/SCons/compat/builtins.py +0 -187
  194. data/ext/v8/upstream/build/scons/build/lib/SCons/cpp.py +0 -598
  195. data/ext/v8/upstream/build/scons/build/lib/SCons/dblite.py +0 -248
  196. data/ext/v8/upstream/build/scons/build/lib/SCons/exitfuncs.py +0 -77
  197. data/ext/v8/upstream/build/scons/build/scripts/scons +0 -184
  198. data/ext/v8/upstream/build/scons/build/scripts/scons-time +0 -1529
  199. data/ext/v8/upstream/build/scons/build/scripts/scons.bat +0 -31
  200. data/ext/v8/upstream/build/scons/build/scripts/sconsign +0 -508
  201. data/ext/v8/upstream/build/scons/engine/SCons/Action.py +0 -1256
  202. data/ext/v8/upstream/build/scons/engine/SCons/Builder.py +0 -868
  203. data/ext/v8/upstream/build/scons/engine/SCons/CacheDir.py +0 -217
  204. data/ext/v8/upstream/build/scons/engine/SCons/Conftest.py +0 -794
  205. data/ext/v8/upstream/build/scons/engine/SCons/Debug.py +0 -237
  206. data/ext/v8/upstream/build/scons/engine/SCons/Defaults.py +0 -485
  207. data/ext/v8/upstream/build/scons/engine/SCons/Environment.py +0 -2327
  208. data/ext/v8/upstream/build/scons/engine/SCons/Errors.py +0 -207
  209. data/ext/v8/upstream/build/scons/engine/SCons/Executor.py +0 -636
  210. data/ext/v8/upstream/build/scons/engine/SCons/Job.py +0 -435
  211. data/ext/v8/upstream/build/scons/engine/SCons/Memoize.py +0 -292
  212. data/ext/v8/upstream/build/scons/engine/SCons/Node/Alias.py +0 -153
  213. data/ext/v8/upstream/build/scons/engine/SCons/Node/FS.py +0 -3220
  214. data/ext/v8/upstream/build/scons/engine/SCons/Node/Python.py +0 -128
  215. data/ext/v8/upstream/build/scons/engine/SCons/Node/__init__.py +0 -1341
  216. data/ext/v8/upstream/build/scons/engine/SCons/Options/BoolOption.py +0 -50
  217. data/ext/v8/upstream/build/scons/engine/SCons/Options/EnumOption.py +0 -50
  218. data/ext/v8/upstream/build/scons/engine/SCons/Options/ListOption.py +0 -50
  219. data/ext/v8/upstream/build/scons/engine/SCons/Options/PackageOption.py +0 -50
  220. data/ext/v8/upstream/build/scons/engine/SCons/Options/PathOption.py +0 -76
  221. data/ext/v8/upstream/build/scons/engine/SCons/Options/__init__.py +0 -74
  222. data/ext/v8/upstream/build/scons/engine/SCons/PathList.py +0 -232
  223. data/ext/v8/upstream/build/scons/engine/SCons/Platform/__init__.py +0 -236
  224. data/ext/v8/upstream/build/scons/engine/SCons/Platform/aix.py +0 -70
  225. data/ext/v8/upstream/build/scons/engine/SCons/Platform/cygwin.py +0 -55
  226. data/ext/v8/upstream/build/scons/engine/SCons/Platform/darwin.py +0 -46
  227. data/ext/v8/upstream/build/scons/engine/SCons/Platform/hpux.py +0 -46
  228. data/ext/v8/upstream/build/scons/engine/SCons/Platform/irix.py +0 -44
  229. data/ext/v8/upstream/build/scons/engine/SCons/Platform/os2.py +0 -58
  230. data/ext/v8/upstream/build/scons/engine/SCons/Platform/posix.py +0 -264
  231. data/ext/v8/upstream/build/scons/engine/SCons/Platform/sunos.py +0 -50
  232. data/ext/v8/upstream/build/scons/engine/SCons/Platform/win32.py +0 -386
  233. data/ext/v8/upstream/build/scons/engine/SCons/SConf.py +0 -1038
  234. data/ext/v8/upstream/build/scons/engine/SCons/SConsign.py +0 -381
  235. data/ext/v8/upstream/build/scons/engine/SCons/Scanner/C.py +0 -132
  236. data/ext/v8/upstream/build/scons/engine/SCons/Scanner/D.py +0 -74
  237. data/ext/v8/upstream/build/scons/engine/SCons/Scanner/Dir.py +0 -111
  238. data/ext/v8/upstream/build/scons/engine/SCons/Scanner/Fortran.py +0 -320
  239. data/ext/v8/upstream/build/scons/engine/SCons/Scanner/IDL.py +0 -48
  240. data/ext/v8/upstream/build/scons/engine/SCons/Scanner/LaTeX.py +0 -378
  241. data/ext/v8/upstream/build/scons/engine/SCons/Scanner/Prog.py +0 -103
  242. data/ext/v8/upstream/build/scons/engine/SCons/Scanner/RC.py +0 -55
  243. data/ext/v8/upstream/build/scons/engine/SCons/Scanner/__init__.py +0 -415
  244. data/ext/v8/upstream/build/scons/engine/SCons/Script/Interactive.py +0 -386
  245. data/ext/v8/upstream/build/scons/engine/SCons/Script/Main.py +0 -1360
  246. data/ext/v8/upstream/build/scons/engine/SCons/Script/SConsOptions.py +0 -944
  247. data/ext/v8/upstream/build/scons/engine/SCons/Script/SConscript.py +0 -642
  248. data/ext/v8/upstream/build/scons/engine/SCons/Script/__init__.py +0 -414
  249. data/ext/v8/upstream/build/scons/engine/SCons/Sig.py +0 -63
  250. data/ext/v8/upstream/build/scons/engine/SCons/Subst.py +0 -911
  251. data/ext/v8/upstream/build/scons/engine/SCons/Taskmaster.py +0 -1030
  252. data/ext/v8/upstream/build/scons/engine/SCons/Tool/386asm.py +0 -61
  253. data/ext/v8/upstream/build/scons/engine/SCons/Tool/BitKeeper.py +0 -65
  254. data/ext/v8/upstream/build/scons/engine/SCons/Tool/CVS.py +0 -73
  255. data/ext/v8/upstream/build/scons/engine/SCons/Tool/FortranCommon.py +0 -247
  256. data/ext/v8/upstream/build/scons/engine/SCons/Tool/JavaCommon.py +0 -324
  257. data/ext/v8/upstream/build/scons/engine/SCons/Tool/MSCommon/__init__.py +0 -56
  258. data/ext/v8/upstream/build/scons/engine/SCons/Tool/MSCommon/arch.py +0 -61
  259. data/ext/v8/upstream/build/scons/engine/SCons/Tool/MSCommon/common.py +0 -210
  260. data/ext/v8/upstream/build/scons/engine/SCons/Tool/MSCommon/netframework.py +0 -84
  261. data/ext/v8/upstream/build/scons/engine/SCons/Tool/MSCommon/sdk.py +0 -321
  262. data/ext/v8/upstream/build/scons/engine/SCons/Tool/MSCommon/vc.py +0 -367
  263. data/ext/v8/upstream/build/scons/engine/SCons/Tool/MSCommon/vs.py +0 -497
  264. data/ext/v8/upstream/build/scons/engine/SCons/Tool/Perforce.py +0 -104
  265. data/ext/v8/upstream/build/scons/engine/SCons/Tool/PharLapCommon.py +0 -138
  266. data/ext/v8/upstream/build/scons/engine/SCons/Tool/RCS.py +0 -64
  267. data/ext/v8/upstream/build/scons/engine/SCons/Tool/SCCS.py +0 -64
  268. data/ext/v8/upstream/build/scons/engine/SCons/Tool/Subversion.py +0 -71
  269. data/ext/v8/upstream/build/scons/engine/SCons/Tool/__init__.py +0 -675
  270. data/ext/v8/upstream/build/scons/engine/SCons/Tool/aixc++.py +0 -82
  271. data/ext/v8/upstream/build/scons/engine/SCons/Tool/aixcc.py +0 -74
  272. data/ext/v8/upstream/build/scons/engine/SCons/Tool/aixf77.py +0 -80
  273. data/ext/v8/upstream/build/scons/engine/SCons/Tool/aixlink.py +0 -76
  274. data/ext/v8/upstream/build/scons/engine/SCons/Tool/applelink.py +0 -71
  275. data/ext/v8/upstream/build/scons/engine/SCons/Tool/ar.py +0 -63
  276. data/ext/v8/upstream/build/scons/engine/SCons/Tool/as.py +0 -78
  277. data/ext/v8/upstream/build/scons/engine/SCons/Tool/bcc32.py +0 -82
  278. data/ext/v8/upstream/build/scons/engine/SCons/Tool/c++.py +0 -99
  279. data/ext/v8/upstream/build/scons/engine/SCons/Tool/cc.py +0 -114
  280. data/ext/v8/upstream/build/scons/engine/SCons/Tool/cvf.py +0 -58
  281. data/ext/v8/upstream/build/scons/engine/SCons/Tool/default.py +0 -50
  282. data/ext/v8/upstream/build/scons/engine/SCons/Tool/dmd.py +0 -224
  283. data/ext/v8/upstream/build/scons/engine/SCons/Tool/dvi.py +0 -64
  284. data/ext/v8/upstream/build/scons/engine/SCons/Tool/dvipdf.py +0 -125
  285. data/ext/v8/upstream/build/scons/engine/SCons/Tool/dvips.py +0 -94
  286. data/ext/v8/upstream/build/scons/engine/SCons/Tool/f77.py +0 -62
  287. data/ext/v8/upstream/build/scons/engine/SCons/Tool/f90.py +0 -62
  288. data/ext/v8/upstream/build/scons/engine/SCons/Tool/f95.py +0 -63
  289. data/ext/v8/upstream/build/scons/engine/SCons/Tool/filesystem.py +0 -98
  290. data/ext/v8/upstream/build/scons/engine/SCons/Tool/fortran.py +0 -63
  291. data/ext/v8/upstream/build/scons/engine/SCons/Tool/g++.py +0 -90
  292. data/ext/v8/upstream/build/scons/engine/SCons/Tool/g77.py +0 -73
  293. data/ext/v8/upstream/build/scons/engine/SCons/Tool/gas.py +0 -53
  294. data/ext/v8/upstream/build/scons/engine/SCons/Tool/gcc.py +0 -80
  295. data/ext/v8/upstream/build/scons/engine/SCons/Tool/gfortran.py +0 -64
  296. data/ext/v8/upstream/build/scons/engine/SCons/Tool/gnulink.py +0 -63
  297. data/ext/v8/upstream/build/scons/engine/SCons/Tool/gs.py +0 -81
  298. data/ext/v8/upstream/build/scons/engine/SCons/Tool/hpc++.py +0 -85
  299. data/ext/v8/upstream/build/scons/engine/SCons/Tool/hpcc.py +0 -53
  300. data/ext/v8/upstream/build/scons/engine/SCons/Tool/hplink.py +0 -77
  301. data/ext/v8/upstream/build/scons/engine/SCons/Tool/icc.py +0 -59
  302. data/ext/v8/upstream/build/scons/engine/SCons/Tool/icl.py +0 -52
  303. data/ext/v8/upstream/build/scons/engine/SCons/Tool/ifl.py +0 -72
  304. data/ext/v8/upstream/build/scons/engine/SCons/Tool/ifort.py +0 -90
  305. data/ext/v8/upstream/build/scons/engine/SCons/Tool/ilink.py +0 -59
  306. data/ext/v8/upstream/build/scons/engine/SCons/Tool/ilink32.py +0 -60
  307. data/ext/v8/upstream/build/scons/engine/SCons/Tool/install.py +0 -229
  308. data/ext/v8/upstream/build/scons/engine/SCons/Tool/intelc.py +0 -490
  309. data/ext/v8/upstream/build/scons/engine/SCons/Tool/ipkg.py +0 -71
  310. data/ext/v8/upstream/build/scons/engine/SCons/Tool/jar.py +0 -110
  311. data/ext/v8/upstream/build/scons/engine/SCons/Tool/javac.py +0 -234
  312. data/ext/v8/upstream/build/scons/engine/SCons/Tool/javah.py +0 -138
  313. data/ext/v8/upstream/build/scons/engine/SCons/Tool/latex.py +0 -79
  314. data/ext/v8/upstream/build/scons/engine/SCons/Tool/lex.py +0 -99
  315. data/ext/v8/upstream/build/scons/engine/SCons/Tool/link.py +0 -121
  316. data/ext/v8/upstream/build/scons/engine/SCons/Tool/linkloc.py +0 -112
  317. data/ext/v8/upstream/build/scons/engine/SCons/Tool/m4.py +0 -63
  318. data/ext/v8/upstream/build/scons/engine/SCons/Tool/masm.py +0 -77
  319. data/ext/v8/upstream/build/scons/engine/SCons/Tool/midl.py +0 -90
  320. data/ext/v8/upstream/build/scons/engine/SCons/Tool/mingw.py +0 -159
  321. data/ext/v8/upstream/build/scons/engine/SCons/Tool/mslib.py +0 -64
  322. data/ext/v8/upstream/build/scons/engine/SCons/Tool/mslink.py +0 -266
  323. data/ext/v8/upstream/build/scons/engine/SCons/Tool/mssdk.py +0 -50
  324. data/ext/v8/upstream/build/scons/engine/SCons/Tool/msvc.py +0 -269
  325. data/ext/v8/upstream/build/scons/engine/SCons/Tool/msvs.py +0 -1439
  326. data/ext/v8/upstream/build/scons/engine/SCons/Tool/mwcc.py +0 -208
  327. data/ext/v8/upstream/build/scons/engine/SCons/Tool/mwld.py +0 -107
  328. data/ext/v8/upstream/build/scons/engine/SCons/Tool/nasm.py +0 -72
  329. data/ext/v8/upstream/build/scons/engine/SCons/Tool/packaging/__init__.py +0 -314
  330. data/ext/v8/upstream/build/scons/engine/SCons/Tool/packaging/ipk.py +0 -185
  331. data/ext/v8/upstream/build/scons/engine/SCons/Tool/packaging/msi.py +0 -526
  332. data/ext/v8/upstream/build/scons/engine/SCons/Tool/packaging/rpm.py +0 -367
  333. data/ext/v8/upstream/build/scons/engine/SCons/Tool/packaging/src_tarbz2.py +0 -43
  334. data/ext/v8/upstream/build/scons/engine/SCons/Tool/packaging/src_targz.py +0 -43
  335. data/ext/v8/upstream/build/scons/engine/SCons/Tool/packaging/src_zip.py +0 -43
  336. data/ext/v8/upstream/build/scons/engine/SCons/Tool/packaging/tarbz2.py +0 -44
  337. data/ext/v8/upstream/build/scons/engine/SCons/Tool/packaging/targz.py +0 -44
  338. data/ext/v8/upstream/build/scons/engine/SCons/Tool/packaging/zip.py +0 -44
  339. data/ext/v8/upstream/build/scons/engine/SCons/Tool/pdf.py +0 -78
  340. data/ext/v8/upstream/build/scons/engine/SCons/Tool/pdflatex.py +0 -83
  341. data/ext/v8/upstream/build/scons/engine/SCons/Tool/pdftex.py +0 -108
  342. data/ext/v8/upstream/build/scons/engine/SCons/Tool/qt.py +0 -336
  343. data/ext/v8/upstream/build/scons/engine/SCons/Tool/rmic.py +0 -121
  344. data/ext/v8/upstream/build/scons/engine/SCons/Tool/rpcgen.py +0 -70
  345. data/ext/v8/upstream/build/scons/engine/SCons/Tool/rpm.py +0 -132
  346. data/ext/v8/upstream/build/scons/engine/SCons/Tool/sgiar.py +0 -68
  347. data/ext/v8/upstream/build/scons/engine/SCons/Tool/sgic++.py +0 -58
  348. data/ext/v8/upstream/build/scons/engine/SCons/Tool/sgicc.py +0 -53
  349. data/ext/v8/upstream/build/scons/engine/SCons/Tool/sgilink.py +0 -63
  350. data/ext/v8/upstream/build/scons/engine/SCons/Tool/sunar.py +0 -67
  351. data/ext/v8/upstream/build/scons/engine/SCons/Tool/sunc++.py +0 -142
  352. data/ext/v8/upstream/build/scons/engine/SCons/Tool/suncc.py +0 -58
  353. data/ext/v8/upstream/build/scons/engine/SCons/Tool/sunf77.py +0 -63
  354. data/ext/v8/upstream/build/scons/engine/SCons/Tool/sunf90.py +0 -64
  355. data/ext/v8/upstream/build/scons/engine/SCons/Tool/sunf95.py +0 -64
  356. data/ext/v8/upstream/build/scons/engine/SCons/Tool/sunlink.py +0 -77
  357. data/ext/v8/upstream/build/scons/engine/SCons/Tool/swig.py +0 -186
  358. data/ext/v8/upstream/build/scons/engine/SCons/Tool/tar.py +0 -73
  359. data/ext/v8/upstream/build/scons/engine/SCons/Tool/tex.py +0 -805
  360. data/ext/v8/upstream/build/scons/engine/SCons/Tool/textfile.py +0 -175
  361. data/ext/v8/upstream/build/scons/engine/SCons/Tool/tlib.py +0 -53
  362. data/ext/v8/upstream/build/scons/engine/SCons/Tool/wix.py +0 -100
  363. data/ext/v8/upstream/build/scons/engine/SCons/Tool/yacc.py +0 -131
  364. data/ext/v8/upstream/build/scons/engine/SCons/Tool/zip.py +0 -100
  365. data/ext/v8/upstream/build/scons/engine/SCons/Util.py +0 -1645
  366. data/ext/v8/upstream/build/scons/engine/SCons/Variables/BoolVariable.py +0 -91
  367. data/ext/v8/upstream/build/scons/engine/SCons/Variables/EnumVariable.py +0 -107
  368. data/ext/v8/upstream/build/scons/engine/SCons/Variables/ListVariable.py +0 -139
  369. data/ext/v8/upstream/build/scons/engine/SCons/Variables/PackageVariable.py +0 -109
  370. data/ext/v8/upstream/build/scons/engine/SCons/Variables/PathVariable.py +0 -147
  371. data/ext/v8/upstream/build/scons/engine/SCons/Variables/__init__.py +0 -317
  372. data/ext/v8/upstream/build/scons/engine/SCons/Warnings.py +0 -228
  373. data/ext/v8/upstream/build/scons/engine/SCons/__init__.py +0 -49
  374. data/ext/v8/upstream/build/scons/engine/SCons/compat/__init__.py +0 -302
  375. data/ext/v8/upstream/build/scons/engine/SCons/compat/_scons_UserString.py +0 -98
  376. data/ext/v8/upstream/build/scons/engine/SCons/compat/_scons_hashlib.py +0 -91
  377. data/ext/v8/upstream/build/scons/engine/SCons/compat/_scons_itertools.py +0 -124
  378. data/ext/v8/upstream/build/scons/engine/SCons/compat/_scons_optparse.py +0 -1725
  379. data/ext/v8/upstream/build/scons/engine/SCons/compat/_scons_sets.py +0 -583
  380. data/ext/v8/upstream/build/scons/engine/SCons/compat/_scons_sets15.py +0 -176
  381. data/ext/v8/upstream/build/scons/engine/SCons/compat/_scons_shlex.py +0 -325
  382. data/ext/v8/upstream/build/scons/engine/SCons/compat/_scons_subprocess.py +0 -1296
  383. data/ext/v8/upstream/build/scons/engine/SCons/compat/_scons_textwrap.py +0 -382
  384. data/ext/v8/upstream/build/scons/engine/SCons/compat/builtins.py +0 -187
  385. data/ext/v8/upstream/build/scons/engine/SCons/cpp.py +0 -598
  386. data/ext/v8/upstream/build/scons/engine/SCons/dblite.py +0 -248
  387. data/ext/v8/upstream/build/scons/engine/SCons/exitfuncs.py +0 -77
  388. data/ext/v8/upstream/build/scons/install/bin/scons +0 -184
  389. data/ext/v8/upstream/build/scons/install/bin/scons-1.2.0.d20100117 +0 -184
  390. data/ext/v8/upstream/build/scons/install/bin/scons-time +0 -1529
  391. data/ext/v8/upstream/build/scons/install/bin/scons-time-1.2.0.d20100117 +0 -1529
  392. data/ext/v8/upstream/build/scons/install/bin/sconsign +0 -508
  393. data/ext/v8/upstream/build/scons/install/bin/sconsign-1.2.0.d20100117 +0 -508
  394. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Action.py +0 -1256
  395. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Action.pyc +0 -0
  396. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Builder.py +0 -868
  397. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Builder.pyc +0 -0
  398. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/CacheDir.py +0 -217
  399. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/CacheDir.pyc +0 -0
  400. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Conftest.py +0 -794
  401. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Conftest.pyc +0 -0
  402. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Debug.py +0 -237
  403. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Debug.pyc +0 -0
  404. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Defaults.py +0 -485
  405. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Defaults.pyc +0 -0
  406. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Environment.py +0 -2327
  407. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Environment.pyc +0 -0
  408. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Errors.py +0 -207
  409. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Errors.pyc +0 -0
  410. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Executor.py +0 -636
  411. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Executor.pyc +0 -0
  412. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Job.py +0 -435
  413. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Job.pyc +0 -0
  414. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Memoize.py +0 -292
  415. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Memoize.pyc +0 -0
  416. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Node/Alias.py +0 -153
  417. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Node/Alias.pyc +0 -0
  418. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Node/FS.py +0 -3220
  419. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Node/FS.pyc +0 -0
  420. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Node/Python.py +0 -128
  421. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Node/Python.pyc +0 -0
  422. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Node/__init__.py +0 -1341
  423. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Node/__init__.pyc +0 -0
  424. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Options/BoolOption.py +0 -50
  425. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Options/BoolOption.pyc +0 -0
  426. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Options/EnumOption.py +0 -50
  427. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Options/EnumOption.pyc +0 -0
  428. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Options/ListOption.py +0 -50
  429. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Options/ListOption.pyc +0 -0
  430. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Options/PackageOption.py +0 -50
  431. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Options/PackageOption.pyc +0 -0
  432. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Options/PathOption.py +0 -76
  433. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Options/PathOption.pyc +0 -0
  434. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Options/__init__.py +0 -74
  435. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Options/__init__.pyc +0 -0
  436. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/PathList.py +0 -232
  437. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/PathList.pyc +0 -0
  438. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Platform/__init__.py +0 -236
  439. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Platform/__init__.pyc +0 -0
  440. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Platform/aix.py +0 -70
  441. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Platform/aix.pyc +0 -0
  442. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Platform/cygwin.py +0 -55
  443. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Platform/cygwin.pyc +0 -0
  444. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Platform/darwin.py +0 -46
  445. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Platform/darwin.pyc +0 -0
  446. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Platform/hpux.py +0 -46
  447. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Platform/hpux.pyc +0 -0
  448. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Platform/irix.py +0 -44
  449. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Platform/irix.pyc +0 -0
  450. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Platform/os2.py +0 -58
  451. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Platform/os2.pyc +0 -0
  452. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Platform/posix.py +0 -264
  453. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Platform/posix.pyc +0 -0
  454. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Platform/sunos.py +0 -50
  455. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Platform/sunos.pyc +0 -0
  456. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Platform/win32.py +0 -386
  457. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Platform/win32.pyc +0 -0
  458. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/SConf.py +0 -1038
  459. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/SConf.pyc +0 -0
  460. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/SConsign.py +0 -381
  461. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/SConsign.pyc +0 -0
  462. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Scanner/C.py +0 -132
  463. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Scanner/C.pyc +0 -0
  464. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Scanner/D.py +0 -74
  465. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Scanner/D.pyc +0 -0
  466. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Scanner/Dir.py +0 -111
  467. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Scanner/Dir.pyc +0 -0
  468. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Scanner/Fortran.py +0 -320
  469. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Scanner/Fortran.pyc +0 -0
  470. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Scanner/IDL.py +0 -48
  471. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Scanner/IDL.pyc +0 -0
  472. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Scanner/LaTeX.py +0 -378
  473. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Scanner/LaTeX.pyc +0 -0
  474. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Scanner/Prog.py +0 -103
  475. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Scanner/Prog.pyc +0 -0
  476. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Scanner/RC.py +0 -55
  477. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Scanner/RC.pyc +0 -0
  478. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Scanner/__init__.py +0 -415
  479. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Scanner/__init__.pyc +0 -0
  480. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Script/Interactive.py +0 -386
  481. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Script/Interactive.pyc +0 -0
  482. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Script/Main.py +0 -1360
  483. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Script/Main.pyc +0 -0
  484. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Script/SConsOptions.py +0 -944
  485. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Script/SConsOptions.pyc +0 -0
  486. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Script/SConscript.py +0 -642
  487. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Script/SConscript.pyc +0 -0
  488. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Script/__init__.py +0 -414
  489. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Script/__init__.pyc +0 -0
  490. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Sig.py +0 -63
  491. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Sig.pyc +0 -0
  492. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Subst.py +0 -911
  493. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Subst.pyc +0 -0
  494. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Taskmaster.py +0 -1030
  495. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Taskmaster.pyc +0 -0
  496. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/386asm.py +0 -61
  497. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/386asm.pyc +0 -0
  498. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/BitKeeper.py +0 -65
  499. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/BitKeeper.pyc +0 -0
  500. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/CVS.py +0 -73
  501. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/CVS.pyc +0 -0
  502. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/FortranCommon.py +0 -247
  503. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/FortranCommon.pyc +0 -0
  504. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/JavaCommon.py +0 -324
  505. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/JavaCommon.pyc +0 -0
  506. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/MSCommon/__init__.py +0 -56
  507. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/MSCommon/__init__.pyc +0 -0
  508. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/MSCommon/arch.py +0 -61
  509. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/MSCommon/arch.pyc +0 -0
  510. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/MSCommon/common.py +0 -210
  511. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/MSCommon/common.pyc +0 -0
  512. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/MSCommon/netframework.py +0 -84
  513. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/MSCommon/netframework.pyc +0 -0
  514. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/MSCommon/sdk.py +0 -321
  515. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/MSCommon/sdk.pyc +0 -0
  516. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/MSCommon/vc.py +0 -367
  517. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/MSCommon/vc.pyc +0 -0
  518. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/MSCommon/vs.py +0 -497
  519. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/MSCommon/vs.pyc +0 -0
  520. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/Perforce.py +0 -104
  521. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/Perforce.pyc +0 -0
  522. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/PharLapCommon.py +0 -138
  523. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/PharLapCommon.pyc +0 -0
  524. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/RCS.py +0 -64
  525. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/RCS.pyc +0 -0
  526. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/SCCS.py +0 -64
  527. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/SCCS.pyc +0 -0
  528. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/Subversion.py +0 -71
  529. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/Subversion.pyc +0 -0
  530. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/__init__.py +0 -675
  531. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/__init__.pyc +0 -0
  532. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/aixc++.py +0 -82
  533. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/aixc++.pyc +0 -0
  534. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/aixcc.py +0 -74
  535. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/aixcc.pyc +0 -0
  536. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/aixf77.py +0 -80
  537. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/aixf77.pyc +0 -0
  538. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/aixlink.py +0 -76
  539. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/aixlink.pyc +0 -0
  540. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/applelink.py +0 -71
  541. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/applelink.pyc +0 -0
  542. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/ar.py +0 -63
  543. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/ar.pyc +0 -0
  544. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/as.py +0 -78
  545. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/as.pyc +0 -0
  546. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/bcc32.py +0 -82
  547. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/bcc32.pyc +0 -0
  548. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/c++.py +0 -99
  549. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/c++.pyc +0 -0
  550. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/cc.py +0 -114
  551. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/cc.pyc +0 -0
  552. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/cvf.py +0 -58
  553. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/cvf.pyc +0 -0
  554. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/default.py +0 -50
  555. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/default.pyc +0 -0
  556. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/dmd.py +0 -224
  557. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/dmd.pyc +0 -0
  558. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/dvi.py +0 -64
  559. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/dvi.pyc +0 -0
  560. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/dvipdf.py +0 -125
  561. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/dvipdf.pyc +0 -0
  562. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/dvips.py +0 -94
  563. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/dvips.pyc +0 -0
  564. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/f77.py +0 -62
  565. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/f77.pyc +0 -0
  566. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/f90.py +0 -62
  567. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/f90.pyc +0 -0
  568. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/f95.py +0 -63
  569. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/f95.pyc +0 -0
  570. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/filesystem.py +0 -98
  571. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/filesystem.pyc +0 -0
  572. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/fortran.py +0 -63
  573. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/fortran.pyc +0 -0
  574. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/g++.py +0 -90
  575. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/g++.pyc +0 -0
  576. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/g77.py +0 -73
  577. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/g77.pyc +0 -0
  578. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/gas.py +0 -53
  579. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/gas.pyc +0 -0
  580. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/gcc.py +0 -80
  581. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/gcc.pyc +0 -0
  582. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/gfortran.py +0 -64
  583. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/gfortran.pyc +0 -0
  584. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/gnulink.py +0 -63
  585. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/gnulink.pyc +0 -0
  586. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/gs.py +0 -81
  587. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/gs.pyc +0 -0
  588. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/hpc++.py +0 -85
  589. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/hpc++.pyc +0 -0
  590. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/hpcc.py +0 -53
  591. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/hpcc.pyc +0 -0
  592. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/hplink.py +0 -77
  593. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/hplink.pyc +0 -0
  594. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/icc.py +0 -59
  595. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/icc.pyc +0 -0
  596. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/icl.py +0 -52
  597. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/icl.pyc +0 -0
  598. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/ifl.py +0 -72
  599. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/ifl.pyc +0 -0
  600. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/ifort.py +0 -90
  601. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/ifort.pyc +0 -0
  602. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/ilink.py +0 -59
  603. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/ilink.pyc +0 -0
  604. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/ilink32.py +0 -60
  605. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/ilink32.pyc +0 -0
  606. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/install.py +0 -229
  607. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/install.pyc +0 -0
  608. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/intelc.py +0 -490
  609. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/intelc.pyc +0 -0
  610. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/ipkg.py +0 -71
  611. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/ipkg.pyc +0 -0
  612. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/jar.py +0 -110
  613. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/jar.pyc +0 -0
  614. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/javac.py +0 -234
  615. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/javac.pyc +0 -0
  616. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/javah.py +0 -138
  617. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/javah.pyc +0 -0
  618. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/latex.py +0 -79
  619. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/latex.pyc +0 -0
  620. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/lex.py +0 -99
  621. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/lex.pyc +0 -0
  622. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/link.py +0 -121
  623. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/link.pyc +0 -0
  624. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/linkloc.py +0 -112
  625. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/linkloc.pyc +0 -0
  626. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/m4.py +0 -63
  627. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/m4.pyc +0 -0
  628. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/masm.py +0 -77
  629. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/masm.pyc +0 -0
  630. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/midl.py +0 -90
  631. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/midl.pyc +0 -0
  632. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/mingw.py +0 -159
  633. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/mingw.pyc +0 -0
  634. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/mslib.py +0 -64
  635. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/mslib.pyc +0 -0
  636. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/mslink.py +0 -266
  637. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/mslink.pyc +0 -0
  638. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/mssdk.py +0 -50
  639. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/mssdk.pyc +0 -0
  640. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/msvc.py +0 -269
  641. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/msvc.pyc +0 -0
  642. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/msvs.py +0 -1439
  643. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/msvs.pyc +0 -0
  644. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/mwcc.py +0 -208
  645. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/mwcc.pyc +0 -0
  646. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/mwld.py +0 -107
  647. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/mwld.pyc +0 -0
  648. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/nasm.py +0 -72
  649. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/nasm.pyc +0 -0
  650. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/packaging/__init__.py +0 -314
  651. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/packaging/__init__.pyc +0 -0
  652. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/packaging/ipk.py +0 -185
  653. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/packaging/ipk.pyc +0 -0
  654. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/packaging/msi.py +0 -526
  655. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/packaging/msi.pyc +0 -0
  656. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/packaging/rpm.py +0 -367
  657. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/packaging/rpm.pyc +0 -0
  658. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/packaging/src_tarbz2.py +0 -43
  659. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/packaging/src_tarbz2.pyc +0 -0
  660. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/packaging/src_targz.py +0 -43
  661. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/packaging/src_targz.pyc +0 -0
  662. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/packaging/src_zip.py +0 -43
  663. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/packaging/src_zip.pyc +0 -0
  664. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/packaging/tarbz2.py +0 -44
  665. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/packaging/tarbz2.pyc +0 -0
  666. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/packaging/targz.py +0 -44
  667. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/packaging/targz.pyc +0 -0
  668. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/packaging/zip.py +0 -44
  669. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/packaging/zip.pyc +0 -0
  670. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/pdf.py +0 -78
  671. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/pdf.pyc +0 -0
  672. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/pdflatex.py +0 -83
  673. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/pdflatex.pyc +0 -0
  674. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/pdftex.py +0 -108
  675. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/pdftex.pyc +0 -0
  676. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/qt.py +0 -336
  677. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/qt.pyc +0 -0
  678. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/rmic.py +0 -121
  679. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/rmic.pyc +0 -0
  680. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/rpcgen.py +0 -70
  681. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/rpcgen.pyc +0 -0
  682. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/rpm.py +0 -132
  683. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/rpm.pyc +0 -0
  684. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/sgiar.py +0 -68
  685. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/sgiar.pyc +0 -0
  686. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/sgic++.py +0 -58
  687. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/sgic++.pyc +0 -0
  688. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/sgicc.py +0 -53
  689. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/sgicc.pyc +0 -0
  690. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/sgilink.py +0 -63
  691. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/sgilink.pyc +0 -0
  692. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/sunar.py +0 -67
  693. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/sunar.pyc +0 -0
  694. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/sunc++.py +0 -142
  695. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/sunc++.pyc +0 -0
  696. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/suncc.py +0 -58
  697. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/suncc.pyc +0 -0
  698. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/sunf77.py +0 -63
  699. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/sunf77.pyc +0 -0
  700. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/sunf90.py +0 -64
  701. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/sunf90.pyc +0 -0
  702. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/sunf95.py +0 -64
  703. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/sunf95.pyc +0 -0
  704. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/sunlink.py +0 -77
  705. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/sunlink.pyc +0 -0
  706. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/swig.py +0 -186
  707. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/swig.pyc +0 -0
  708. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/tar.py +0 -73
  709. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/tar.pyc +0 -0
  710. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/tex.py +0 -805
  711. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/tex.pyc +0 -0
  712. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/textfile.py +0 -175
  713. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/textfile.pyc +0 -0
  714. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/tlib.py +0 -53
  715. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/tlib.pyc +0 -0
  716. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/wix.py +0 -100
  717. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/wix.pyc +0 -0
  718. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/yacc.py +0 -131
  719. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/yacc.pyc +0 -0
  720. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/zip.py +0 -100
  721. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Tool/zip.pyc +0 -0
  722. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Util.py +0 -1645
  723. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Util.pyc +0 -0
  724. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Variables/BoolVariable.py +0 -91
  725. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Variables/BoolVariable.pyc +0 -0
  726. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Variables/EnumVariable.py +0 -107
  727. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Variables/EnumVariable.pyc +0 -0
  728. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Variables/ListVariable.py +0 -139
  729. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Variables/ListVariable.pyc +0 -0
  730. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Variables/PackageVariable.py +0 -109
  731. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Variables/PackageVariable.pyc +0 -0
  732. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Variables/PathVariable.py +0 -147
  733. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Variables/PathVariable.pyc +0 -0
  734. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Variables/__init__.py +0 -317
  735. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Variables/__init__.pyc +0 -0
  736. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Warnings.py +0 -228
  737. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/Warnings.pyc +0 -0
  738. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/__init__.py +0 -49
  739. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/__init__.pyc +0 -0
  740. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/compat/__init__.py +0 -302
  741. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/compat/__init__.pyc +0 -0
  742. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/compat/_scons_UserString.py +0 -98
  743. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/compat/_scons_UserString.pyc +0 -0
  744. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/compat/_scons_hashlib.py +0 -91
  745. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/compat/_scons_hashlib.pyc +0 -0
  746. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/compat/_scons_itertools.py +0 -124
  747. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/compat/_scons_itertools.pyc +0 -0
  748. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/compat/_scons_optparse.py +0 -1725
  749. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/compat/_scons_optparse.pyc +0 -0
  750. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/compat/_scons_sets.py +0 -583
  751. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/compat/_scons_sets.pyc +0 -0
  752. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/compat/_scons_sets15.py +0 -176
  753. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/compat/_scons_sets15.pyc +0 -0
  754. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/compat/_scons_shlex.py +0 -325
  755. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/compat/_scons_shlex.pyc +0 -0
  756. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/compat/_scons_subprocess.py +0 -1296
  757. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/compat/_scons_subprocess.pyc +0 -0
  758. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/compat/_scons_textwrap.py +0 -382
  759. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/compat/_scons_textwrap.pyc +0 -0
  760. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/compat/builtins.py +0 -187
  761. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/compat/builtins.pyc +0 -0
  762. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/cpp.py +0 -598
  763. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/cpp.pyc +0 -0
  764. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/dblite.py +0 -248
  765. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/dblite.pyc +0 -0
  766. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/exitfuncs.py +0 -77
  767. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/SCons/exitfuncs.pyc +0 -0
  768. data/ext/v8/upstream/build/scons/install/lib/scons-1.2.0.d20100117/scons-1.2.0.d20100117.egg-info +0 -13
  769. data/ext/v8/upstream/build/scons/install/man/man1/scons-time.1 +0 -1017
  770. data/ext/v8/upstream/build/scons/install/man/man1/scons.1 +0 -15179
  771. data/ext/v8/upstream/build/scons/install/man/man1/sconsign.1 +0 -208
  772. data/ext/v8/upstream/build/scons/os_spawnv_fix.diff +0 -83
  773. data/ext/v8/upstream/build/scons/scons-time.1 +0 -1017
  774. data/ext/v8/upstream/build/scons/scons.1 +0 -15179
  775. data/ext/v8/upstream/build/scons/sconsign.1 +0 -208
  776. data/ext/v8/upstream/build/scons/script/scons +0 -184
  777. data/ext/v8/upstream/build/scons/script/scons-time +0 -1529
  778. data/ext/v8/upstream/build/scons/script/scons.bat +0 -31
  779. data/ext/v8/upstream/build/scons/script/sconsign +0 -508
  780. data/ext/v8/upstream/build/scons/setup.cfg +0 -6
  781. data/ext/v8/upstream/build/scons/setup.py +0 -427
  782. data/ext/v8/upstream/build/v8/.gitignore +0 -26
  783. data/ext/v8/upstream/build/v8/AUTHORS +0 -31
  784. data/ext/v8/upstream/build/v8/ChangeLog +0 -1916
  785. data/ext/v8/upstream/build/v8/LICENSE +0 -55
  786. data/ext/v8/upstream/build/v8/SConstruct +0 -1158
  787. data/ext/v8/upstream/build/v8/SConstruct.orig +0 -1154
  788. data/ext/v8/upstream/build/v8/include/v8-debug.h +0 -381
  789. data/ext/v8/upstream/build/v8/include/v8-profiler.h +0 -353
  790. data/ext/v8/upstream/build/v8/src/SConscript +0 -330
  791. data/ext/v8/upstream/build/v8/src/accessors.cc +0 -661
  792. data/ext/v8/upstream/build/v8/src/accessors.h +0 -114
  793. data/ext/v8/upstream/build/v8/src/allocation.cc +0 -198
  794. data/ext/v8/upstream/build/v8/src/allocation.h +0 -169
  795. data/ext/v8/upstream/build/v8/src/api.cc +0 -4795
  796. data/ext/v8/upstream/build/v8/src/api.h +0 -485
  797. data/ext/v8/upstream/build/v8/src/apinatives.js +0 -110
  798. data/ext/v8/upstream/build/v8/src/apiutils.h +0 -69
  799. data/ext/v8/upstream/build/v8/src/arguments.h +0 -96
  800. data/ext/v8/upstream/build/v8/src/arm/assembler-arm-inl.h +0 -305
  801. data/ext/v8/upstream/build/v8/src/arm/assembler-arm.cc +0 -2580
  802. data/ext/v8/upstream/build/v8/src/arm/assembler-arm.h +0 -1275
  803. data/ext/v8/upstream/build/v8/src/arm/builtins-arm.cc +0 -1320
  804. data/ext/v8/upstream/build/v8/src/arm/codegen-arm-inl.h +0 -48
  805. data/ext/v8/upstream/build/v8/src/arm/codegen-arm.cc +0 -11398
  806. data/ext/v8/upstream/build/v8/src/arm/codegen-arm.h +0 -1102
  807. data/ext/v8/upstream/build/v8/src/arm/constants-arm.cc +0 -154
  808. data/ext/v8/upstream/build/v8/src/arm/constants-arm.h +0 -388
  809. data/ext/v8/upstream/build/v8/src/arm/cpu-arm.cc +0 -142
  810. data/ext/v8/upstream/build/v8/src/arm/debug-arm.cc +0 -309
  811. data/ext/v8/upstream/build/v8/src/arm/disasm-arm.cc +0 -1459
  812. data/ext/v8/upstream/build/v8/src/arm/fast-codegen-arm.cc +0 -241
  813. data/ext/v8/upstream/build/v8/src/arm/frames-arm.cc +0 -123
  814. data/ext/v8/upstream/build/v8/src/arm/frames-arm.h +0 -162
  815. data/ext/v8/upstream/build/v8/src/arm/full-codegen-arm.cc +0 -3178
  816. data/ext/v8/upstream/build/v8/src/arm/ic-arm.cc +0 -2258
  817. data/ext/v8/upstream/build/v8/src/arm/jump-target-arm.cc +0 -164
  818. data/ext/v8/upstream/build/v8/src/arm/macro-assembler-arm.cc +0 -1892
  819. data/ext/v8/upstream/build/v8/src/arm/macro-assembler-arm.h +0 -727
  820. data/ext/v8/upstream/build/v8/src/arm/regexp-macro-assembler-arm.cc +0 -1261
  821. data/ext/v8/upstream/build/v8/src/arm/regexp-macro-assembler-arm.h +0 -266
  822. data/ext/v8/upstream/build/v8/src/arm/register-allocator-arm-inl.h +0 -100
  823. data/ext/v8/upstream/build/v8/src/arm/register-allocator-arm.cc +0 -63
  824. data/ext/v8/upstream/build/v8/src/arm/register-allocator-arm.h +0 -44
  825. data/ext/v8/upstream/build/v8/src/arm/simulator-arm.cc +0 -2822
  826. data/ext/v8/upstream/build/v8/src/arm/simulator-arm.h +0 -361
  827. data/ext/v8/upstream/build/v8/src/arm/stub-cache-arm.cc +0 -2387
  828. data/ext/v8/upstream/build/v8/src/arm/virtual-frame-arm-inl.h +0 -59
  829. data/ext/v8/upstream/build/v8/src/arm/virtual-frame-arm.cc +0 -834
  830. data/ext/v8/upstream/build/v8/src/arm/virtual-frame-arm.h +0 -519
  831. data/ext/v8/upstream/build/v8/src/array.js +0 -1127
  832. data/ext/v8/upstream/build/v8/src/assembler.cc +0 -801
  833. data/ext/v8/upstream/build/v8/src/assembler.h +0 -573
  834. data/ext/v8/upstream/build/v8/src/ast-inl.h +0 -81
  835. data/ext/v8/upstream/build/v8/src/ast.cc +0 -1152
  836. data/ext/v8/upstream/build/v8/src/ast.h +0 -2106
  837. data/ext/v8/upstream/build/v8/src/bootstrapper.cc +0 -1819
  838. data/ext/v8/upstream/build/v8/src/bootstrapper.h +0 -118
  839. data/ext/v8/upstream/build/v8/src/builtins.cc +0 -1529
  840. data/ext/v8/upstream/build/v8/src/builtins.h +0 -263
  841. data/ext/v8/upstream/build/v8/src/bytecodes-irregexp.h +0 -104
  842. data/ext/v8/upstream/build/v8/src/cached-powers.h +0 -119
  843. data/ext/v8/upstream/build/v8/src/char-predicates-inl.h +0 -86
  844. data/ext/v8/upstream/build/v8/src/char-predicates.h +0 -65
  845. data/ext/v8/upstream/build/v8/src/checks.cc +0 -100
  846. data/ext/v8/upstream/build/v8/src/checks.h +0 -310
  847. data/ext/v8/upstream/build/v8/src/circular-queue-inl.h +0 -53
  848. data/ext/v8/upstream/build/v8/src/circular-queue.cc +0 -121
  849. data/ext/v8/upstream/build/v8/src/circular-queue.h +0 -103
  850. data/ext/v8/upstream/build/v8/src/code-stubs.cc +0 -177
  851. data/ext/v8/upstream/build/v8/src/code-stubs.h +0 -177
  852. data/ext/v8/upstream/build/v8/src/code.h +0 -68
  853. data/ext/v8/upstream/build/v8/src/codegen-inl.h +0 -60
  854. data/ext/v8/upstream/build/v8/src/codegen.cc +0 -516
  855. data/ext/v8/upstream/build/v8/src/codegen.h +0 -897
  856. data/ext/v8/upstream/build/v8/src/compilation-cache.cc +0 -562
  857. data/ext/v8/upstream/build/v8/src/compilation-cache.h +0 -102
  858. data/ext/v8/upstream/build/v8/src/compiler.cc +0 -654
  859. data/ext/v8/upstream/build/v8/src/compiler.h +0 -299
  860. data/ext/v8/upstream/build/v8/src/contexts.cc +0 -256
  861. data/ext/v8/upstream/build/v8/src/contexts.h +0 -342
  862. data/ext/v8/upstream/build/v8/src/conversions-inl.h +0 -110
  863. data/ext/v8/upstream/build/v8/src/conversions.cc +0 -1119
  864. data/ext/v8/upstream/build/v8/src/conversions.h +0 -123
  865. data/ext/v8/upstream/build/v8/src/counters.cc +0 -78
  866. data/ext/v8/upstream/build/v8/src/counters.h +0 -239
  867. data/ext/v8/upstream/build/v8/src/cpu-profiler-inl.h +0 -100
  868. data/ext/v8/upstream/build/v8/src/cpu-profiler.cc +0 -538
  869. data/ext/v8/upstream/build/v8/src/cpu-profiler.h +0 -285
  870. data/ext/v8/upstream/build/v8/src/cpu.h +0 -65
  871. data/ext/v8/upstream/build/v8/src/d8-debug.cc +0 -356
  872. data/ext/v8/upstream/build/v8/src/d8-debug.h +0 -155
  873. data/ext/v8/upstream/build/v8/src/d8-posix.cc +0 -693
  874. data/ext/v8/upstream/build/v8/src/d8-readline.cc +0 -128
  875. data/ext/v8/upstream/build/v8/src/d8-windows.cc +0 -42
  876. data/ext/v8/upstream/build/v8/src/d8.cc +0 -783
  877. data/ext/v8/upstream/build/v8/src/d8.h +0 -227
  878. data/ext/v8/upstream/build/v8/src/d8.js +0 -1683
  879. data/ext/v8/upstream/build/v8/src/data-flow.cc +0 -758
  880. data/ext/v8/upstream/build/v8/src/data-flow.h +0 -278
  881. data/ext/v8/upstream/build/v8/src/date.js +0 -1059
  882. data/ext/v8/upstream/build/v8/src/dateparser-inl.h +0 -123
  883. data/ext/v8/upstream/build/v8/src/dateparser.cc +0 -178
  884. data/ext/v8/upstream/build/v8/src/dateparser.h +0 -244
  885. data/ext/v8/upstream/build/v8/src/debug-agent.cc +0 -427
  886. data/ext/v8/upstream/build/v8/src/debug-agent.h +0 -129
  887. data/ext/v8/upstream/build/v8/src/debug-debugger.js +0 -2227
  888. data/ext/v8/upstream/build/v8/src/debug.cc +0 -3005
  889. data/ext/v8/upstream/build/v8/src/debug.h +0 -993
  890. data/ext/v8/upstream/build/v8/src/disasm.h +0 -77
  891. data/ext/v8/upstream/build/v8/src/disassembler.cc +0 -312
  892. data/ext/v8/upstream/build/v8/src/disassembler.h +0 -56
  893. data/ext/v8/upstream/build/v8/src/diy-fp.cc +0 -58
  894. data/ext/v8/upstream/build/v8/src/diy-fp.h +0 -117
  895. data/ext/v8/upstream/build/v8/src/double.h +0 -169
  896. data/ext/v8/upstream/build/v8/src/dtoa-config.c +0 -92
  897. data/ext/v8/upstream/build/v8/src/dtoa.cc +0 -77
  898. data/ext/v8/upstream/build/v8/src/dtoa.h +0 -81
  899. data/ext/v8/upstream/build/v8/src/execution.cc +0 -809
  900. data/ext/v8/upstream/build/v8/src/execution.h +0 -336
  901. data/ext/v8/upstream/build/v8/src/factory.cc +0 -1003
  902. data/ext/v8/upstream/build/v8/src/factory.h +0 -410
  903. data/ext/v8/upstream/build/v8/src/fast-codegen.cc +0 -746
  904. data/ext/v8/upstream/build/v8/src/fast-codegen.h +0 -161
  905. data/ext/v8/upstream/build/v8/src/fast-dtoa.cc +0 -505
  906. data/ext/v8/upstream/build/v8/src/fast-dtoa.h +0 -58
  907. data/ext/v8/upstream/build/v8/src/fixed-dtoa.cc +0 -405
  908. data/ext/v8/upstream/build/v8/src/fixed-dtoa.h +0 -55
  909. data/ext/v8/upstream/build/v8/src/flag-definitions.h +0 -455
  910. data/ext/v8/upstream/build/v8/src/flags.cc +0 -551
  911. data/ext/v8/upstream/build/v8/src/flags.h +0 -81
  912. data/ext/v8/upstream/build/v8/src/flow-graph.cc +0 -763
  913. data/ext/v8/upstream/build/v8/src/flow-graph.h +0 -180
  914. data/ext/v8/upstream/build/v8/src/frame-element.cc +0 -42
  915. data/ext/v8/upstream/build/v8/src/frame-element.h +0 -273
  916. data/ext/v8/upstream/build/v8/src/frames-inl.h +0 -217
  917. data/ext/v8/upstream/build/v8/src/frames.cc +0 -826
  918. data/ext/v8/upstream/build/v8/src/frames.h +0 -682
  919. data/ext/v8/upstream/build/v8/src/full-codegen.cc +0 -1443
  920. data/ext/v8/upstream/build/v8/src/full-codegen.h +0 -548
  921. data/ext/v8/upstream/build/v8/src/func-name-inferrer.cc +0 -76
  922. data/ext/v8/upstream/build/v8/src/func-name-inferrer.h +0 -135
  923. data/ext/v8/upstream/build/v8/src/global-handles.cc +0 -520
  924. data/ext/v8/upstream/build/v8/src/global-handles.h +0 -180
  925. data/ext/v8/upstream/build/v8/src/globals.h +0 -669
  926. data/ext/v8/upstream/build/v8/src/handles-inl.h +0 -76
  927. data/ext/v8/upstream/build/v8/src/handles.cc +0 -825
  928. data/ext/v8/upstream/build/v8/src/handles.h +0 -393
  929. data/ext/v8/upstream/build/v8/src/hashmap.cc +0 -226
  930. data/ext/v8/upstream/build/v8/src/hashmap.h +0 -120
  931. data/ext/v8/upstream/build/v8/src/heap-inl.h +0 -493
  932. data/ext/v8/upstream/build/v8/src/heap-profiler.cc +0 -779
  933. data/ext/v8/upstream/build/v8/src/heap-profiler.h +0 -323
  934. data/ext/v8/upstream/build/v8/src/heap.cc +0 -4994
  935. data/ext/v8/upstream/build/v8/src/heap.h +0 -1984
  936. data/ext/v8/upstream/build/v8/src/ia32/assembler-ia32-inl.h +0 -360
  937. data/ext/v8/upstream/build/v8/src/ia32/assembler-ia32.cc +0 -2600
  938. data/ext/v8/upstream/build/v8/src/ia32/assembler-ia32.h +0 -969
  939. data/ext/v8/upstream/build/v8/src/ia32/builtins-ia32.cc +0 -1261
  940. data/ext/v8/upstream/build/v8/src/ia32/codegen-ia32-inl.h +0 -46
  941. data/ext/v8/upstream/build/v8/src/ia32/codegen-ia32.cc +0 -13968
  942. data/ext/v8/upstream/build/v8/src/ia32/codegen-ia32.h +0 -1097
  943. data/ext/v8/upstream/build/v8/src/ia32/cpu-ia32.cc +0 -83
  944. data/ext/v8/upstream/build/v8/src/ia32/debug-ia32.cc +0 -309
  945. data/ext/v8/upstream/build/v8/src/ia32/disasm-ia32.cc +0 -1471
  946. data/ext/v8/upstream/build/v8/src/ia32/fast-codegen-ia32.cc +0 -954
  947. data/ext/v8/upstream/build/v8/src/ia32/fast-codegen-ia32.h +0 -155
  948. data/ext/v8/upstream/build/v8/src/ia32/frames-ia32.cc +0 -115
  949. data/ext/v8/upstream/build/v8/src/ia32/frames-ia32.h +0 -135
  950. data/ext/v8/upstream/build/v8/src/ia32/full-codegen-ia32.cc +0 -3281
  951. data/ext/v8/upstream/build/v8/src/ia32/ic-ia32.cc +0 -1966
  952. data/ext/v8/upstream/build/v8/src/ia32/jump-target-ia32.cc +0 -437
  953. data/ext/v8/upstream/build/v8/src/ia32/macro-assembler-ia32.cc +0 -1610
  954. data/ext/v8/upstream/build/v8/src/ia32/macro-assembler-ia32.h +0 -610
  955. data/ext/v8/upstream/build/v8/src/ia32/regexp-macro-assembler-ia32.cc +0 -1247
  956. data/ext/v8/upstream/build/v8/src/ia32/regexp-macro-assembler-ia32.h +0 -214
  957. data/ext/v8/upstream/build/v8/src/ia32/register-allocator-ia32-inl.h +0 -82
  958. data/ext/v8/upstream/build/v8/src/ia32/register-allocator-ia32.cc +0 -157
  959. data/ext/v8/upstream/build/v8/src/ia32/register-allocator-ia32.h +0 -43
  960. data/ext/v8/upstream/build/v8/src/ia32/simulator-ia32.cc +0 -30
  961. data/ext/v8/upstream/build/v8/src/ia32/simulator-ia32.h +0 -62
  962. data/ext/v8/upstream/build/v8/src/ia32/stub-cache-ia32.cc +0 -2750
  963. data/ext/v8/upstream/build/v8/src/ia32/virtual-frame-ia32.cc +0 -1334
  964. data/ext/v8/upstream/build/v8/src/ia32/virtual-frame-ia32.h +0 -627
  965. data/ext/v8/upstream/build/v8/src/ic-inl.h +0 -120
  966. data/ext/v8/upstream/build/v8/src/ic.cc +0 -1827
  967. data/ext/v8/upstream/build/v8/src/ic.h +0 -515
  968. data/ext/v8/upstream/build/v8/src/interpreter-irregexp.cc +0 -646
  969. data/ext/v8/upstream/build/v8/src/interpreter-irregexp.h +0 -48
  970. data/ext/v8/upstream/build/v8/src/json.js +0 -268
  971. data/ext/v8/upstream/build/v8/src/jsregexp.cc +0 -5283
  972. data/ext/v8/upstream/build/v8/src/jsregexp.h +0 -1463
  973. data/ext/v8/upstream/build/v8/src/jump-target-heavy-inl.h +0 -51
  974. data/ext/v8/upstream/build/v8/src/jump-target-heavy.cc +0 -429
  975. data/ext/v8/upstream/build/v8/src/jump-target-heavy.h +0 -244
  976. data/ext/v8/upstream/build/v8/src/jump-target-inl.h +0 -48
  977. data/ext/v8/upstream/build/v8/src/jump-target-light-inl.h +0 -56
  978. data/ext/v8/upstream/build/v8/src/jump-target-light.cc +0 -110
  979. data/ext/v8/upstream/build/v8/src/jump-target-light.h +0 -192
  980. data/ext/v8/upstream/build/v8/src/jump-target.cc +0 -91
  981. data/ext/v8/upstream/build/v8/src/jump-target.h +0 -90
  982. data/ext/v8/upstream/build/v8/src/list-inl.h +0 -166
  983. data/ext/v8/upstream/build/v8/src/list.h +0 -159
  984. data/ext/v8/upstream/build/v8/src/liveedit-debugger.js +0 -1057
  985. data/ext/v8/upstream/build/v8/src/liveedit.cc +0 -1480
  986. data/ext/v8/upstream/build/v8/src/liveedit.h +0 -170
  987. data/ext/v8/upstream/build/v8/src/log-inl.h +0 -59
  988. data/ext/v8/upstream/build/v8/src/log-utils.cc +0 -497
  989. data/ext/v8/upstream/build/v8/src/log-utils.h +0 -289
  990. data/ext/v8/upstream/build/v8/src/log.cc +0 -1561
  991. data/ext/v8/upstream/build/v8/src/log.h +0 -384
  992. data/ext/v8/upstream/build/v8/src/macro-assembler.h +0 -86
  993. data/ext/v8/upstream/build/v8/src/macros.py +0 -177
  994. data/ext/v8/upstream/build/v8/src/mark-compact.cc +0 -2330
  995. data/ext/v8/upstream/build/v8/src/mark-compact.h +0 -451
  996. data/ext/v8/upstream/build/v8/src/math.js +0 -264
  997. data/ext/v8/upstream/build/v8/src/memory.h +0 -74
  998. data/ext/v8/upstream/build/v8/src/messages.cc +0 -183
  999. data/ext/v8/upstream/build/v8/src/messages.h +0 -113
  1000. data/ext/v8/upstream/build/v8/src/messages.js +0 -982
  1001. data/ext/v8/upstream/build/v8/src/mips/assembler-mips-inl.h +0 -215
  1002. data/ext/v8/upstream/build/v8/src/mips/assembler-mips.cc +0 -1219
  1003. data/ext/v8/upstream/build/v8/src/mips/assembler-mips.h +0 -668
  1004. data/ext/v8/upstream/build/v8/src/mips/builtins-mips.cc +0 -205
  1005. data/ext/v8/upstream/build/v8/src/mips/codegen-mips-inl.h +0 -70
  1006. data/ext/v8/upstream/build/v8/src/mips/codegen-mips.cc +0 -1437
  1007. data/ext/v8/upstream/build/v8/src/mips/codegen-mips.h +0 -434
  1008. data/ext/v8/upstream/build/v8/src/mips/constants-mips.cc +0 -328
  1009. data/ext/v8/upstream/build/v8/src/mips/constants-mips.h +0 -525
  1010. data/ext/v8/upstream/build/v8/src/mips/cpu-mips.cc +0 -73
  1011. data/ext/v8/upstream/build/v8/src/mips/debug-mips.cc +0 -131
  1012. data/ext/v8/upstream/build/v8/src/mips/disasm-mips.cc +0 -787
  1013. data/ext/v8/upstream/build/v8/src/mips/fast-codegen-mips.cc +0 -77
  1014. data/ext/v8/upstream/build/v8/src/mips/frames-mips.cc +0 -102
  1015. data/ext/v8/upstream/build/v8/src/mips/frames-mips.h +0 -164
  1016. data/ext/v8/upstream/build/v8/src/mips/full-codegen-mips.cc +0 -277
  1017. data/ext/v8/upstream/build/v8/src/mips/ic-mips.cc +0 -220
  1018. data/ext/v8/upstream/build/v8/src/mips/jump-target-mips.cc +0 -175
  1019. data/ext/v8/upstream/build/v8/src/mips/macro-assembler-mips.cc +0 -1326
  1020. data/ext/v8/upstream/build/v8/src/mips/macro-assembler-mips.h +0 -461
  1021. data/ext/v8/upstream/build/v8/src/mips/register-allocator-mips-inl.h +0 -137
  1022. data/ext/v8/upstream/build/v8/src/mips/register-allocator-mips.cc +0 -63
  1023. data/ext/v8/upstream/build/v8/src/mips/register-allocator-mips.h +0 -46
  1024. data/ext/v8/upstream/build/v8/src/mips/simulator-mips.cc +0 -1651
  1025. data/ext/v8/upstream/build/v8/src/mips/simulator-mips.h +0 -311
  1026. data/ext/v8/upstream/build/v8/src/mips/stub-cache-mips.cc +0 -403
  1027. data/ext/v8/upstream/build/v8/src/mips/virtual-frame-mips.cc +0 -319
  1028. data/ext/v8/upstream/build/v8/src/mips/virtual-frame-mips.h +0 -548
  1029. data/ext/v8/upstream/build/v8/src/mirror-debugger.js +0 -2380
  1030. data/ext/v8/upstream/build/v8/src/mksnapshot.cc +0 -256
  1031. data/ext/v8/upstream/build/v8/src/natives.h +0 -63
  1032. data/ext/v8/upstream/build/v8/src/objects-debug.cc +0 -1366
  1033. data/ext/v8/upstream/build/v8/src/objects-inl.h +0 -3333
  1034. data/ext/v8/upstream/build/v8/src/objects.cc +0 -8820
  1035. data/ext/v8/upstream/build/v8/src/objects.h +0 -5373
  1036. data/ext/v8/upstream/build/v8/src/oprofile-agent.cc +0 -108
  1037. data/ext/v8/upstream/build/v8/src/oprofile-agent.h +0 -77
  1038. data/ext/v8/upstream/build/v8/src/parser.cc +0 -5207
  1039. data/ext/v8/upstream/build/v8/src/parser.h +0 -197
  1040. data/ext/v8/upstream/build/v8/src/platform-freebsd.cc +0 -667
  1041. data/ext/v8/upstream/build/v8/src/platform-linux.cc +0 -862
  1042. data/ext/v8/upstream/build/v8/src/platform-macos.cc +0 -665
  1043. data/ext/v8/upstream/build/v8/src/platform-nullos.cc +0 -454
  1044. data/ext/v8/upstream/build/v8/src/platform-openbsd.cc +0 -622
  1045. data/ext/v8/upstream/build/v8/src/platform-posix.cc +0 -362
  1046. data/ext/v8/upstream/build/v8/src/platform-solaris.cc +0 -653
  1047. data/ext/v8/upstream/build/v8/src/platform-win32.cc +0 -1911
  1048. data/ext/v8/upstream/build/v8/src/platform.h +0 -577
  1049. data/ext/v8/upstream/build/v8/src/powers-ten.h +0 -2461
  1050. data/ext/v8/upstream/build/v8/src/prettyprinter.cc +0 -1531
  1051. data/ext/v8/upstream/build/v8/src/prettyprinter.h +0 -221
  1052. data/ext/v8/upstream/build/v8/src/profile-generator-inl.h +0 -148
  1053. data/ext/v8/upstream/build/v8/src/profile-generator.cc +0 -1830
  1054. data/ext/v8/upstream/build/v8/src/profile-generator.h +0 -853
  1055. data/ext/v8/upstream/build/v8/src/property.cc +0 -96
  1056. data/ext/v8/upstream/build/v8/src/property.h +0 -315
  1057. data/ext/v8/upstream/build/v8/src/regexp-macro-assembler-irregexp-inl.h +0 -78
  1058. data/ext/v8/upstream/build/v8/src/regexp-macro-assembler-irregexp.cc +0 -464
  1059. data/ext/v8/upstream/build/v8/src/regexp-macro-assembler-irregexp.h +0 -141
  1060. data/ext/v8/upstream/build/v8/src/regexp-macro-assembler-tracer.cc +0 -356
  1061. data/ext/v8/upstream/build/v8/src/regexp-macro-assembler-tracer.h +0 -103
  1062. data/ext/v8/upstream/build/v8/src/regexp-macro-assembler.cc +0 -261
  1063. data/ext/v8/upstream/build/v8/src/regexp-macro-assembler.h +0 -228
  1064. data/ext/v8/upstream/build/v8/src/regexp-stack.cc +0 -103
  1065. data/ext/v8/upstream/build/v8/src/regexp-stack.h +0 -123
  1066. data/ext/v8/upstream/build/v8/src/regexp.js +0 -549
  1067. data/ext/v8/upstream/build/v8/src/register-allocator-inl.h +0 -141
  1068. data/ext/v8/upstream/build/v8/src/register-allocator.cc +0 -104
  1069. data/ext/v8/upstream/build/v8/src/register-allocator.h +0 -320
  1070. data/ext/v8/upstream/build/v8/src/rewriter.cc +0 -1038
  1071. data/ext/v8/upstream/build/v8/src/rewriter.h +0 -54
  1072. data/ext/v8/upstream/build/v8/src/runtime.cc +0 -10599
  1073. data/ext/v8/upstream/build/v8/src/runtime.h +0 -459
  1074. data/ext/v8/upstream/build/v8/src/runtime.js +0 -629
  1075. data/ext/v8/upstream/build/v8/src/scanner.cc +0 -1346
  1076. data/ext/v8/upstream/build/v8/src/scanner.h +0 -503
  1077. data/ext/v8/upstream/build/v8/src/scopeinfo.cc +0 -637
  1078. data/ext/v8/upstream/build/v8/src/scopeinfo.h +0 -233
  1079. data/ext/v8/upstream/build/v8/src/scopes.cc +0 -962
  1080. data/ext/v8/upstream/build/v8/src/scopes.h +0 -400
  1081. data/ext/v8/upstream/build/v8/src/serialize.cc +0 -1461
  1082. data/ext/v8/upstream/build/v8/src/serialize.h +0 -581
  1083. data/ext/v8/upstream/build/v8/src/shell.h +0 -55
  1084. data/ext/v8/upstream/build/v8/src/simulator.h +0 -43
  1085. data/ext/v8/upstream/build/v8/src/smart-pointer.h +0 -109
  1086. data/ext/v8/upstream/build/v8/src/snapshot-common.cc +0 -82
  1087. data/ext/v8/upstream/build/v8/src/snapshot-empty.cc +0 -50
  1088. data/ext/v8/upstream/build/v8/src/snapshot.h +0 -71
  1089. data/ext/v8/upstream/build/v8/src/spaces-inl.h +0 -483
  1090. data/ext/v8/upstream/build/v8/src/spaces.cc +0 -2901
  1091. data/ext/v8/upstream/build/v8/src/spaces.h +0 -2197
  1092. data/ext/v8/upstream/build/v8/src/splay-tree-inl.h +0 -310
  1093. data/ext/v8/upstream/build/v8/src/splay-tree.h +0 -203
  1094. data/ext/v8/upstream/build/v8/src/string-stream.cc +0 -584
  1095. data/ext/v8/upstream/build/v8/src/string-stream.h +0 -189
  1096. data/ext/v8/upstream/build/v8/src/string.js +0 -1006
  1097. data/ext/v8/upstream/build/v8/src/stub-cache.cc +0 -1379
  1098. data/ext/v8/upstream/build/v8/src/stub-cache.h +0 -756
  1099. data/ext/v8/upstream/build/v8/src/third_party/dtoa/COPYING +0 -15
  1100. data/ext/v8/upstream/build/v8/src/third_party/dtoa/dtoa.c +0 -3334
  1101. data/ext/v8/upstream/build/v8/src/third_party/valgrind/valgrind.h +0 -3925
  1102. data/ext/v8/upstream/build/v8/src/token.cc +0 -56
  1103. data/ext/v8/upstream/build/v8/src/token.h +0 -270
  1104. data/ext/v8/upstream/build/v8/src/top.cc +0 -1067
  1105. data/ext/v8/upstream/build/v8/src/top.h +0 -463
  1106. data/ext/v8/upstream/build/v8/src/type-info.cc +0 -53
  1107. data/ext/v8/upstream/build/v8/src/type-info.h +0 -244
  1108. data/ext/v8/upstream/build/v8/src/unbound-queue-inl.h +0 -95
  1109. data/ext/v8/upstream/build/v8/src/unbound-queue.h +0 -67
  1110. data/ext/v8/upstream/build/v8/src/unicode-inl.h +0 -238
  1111. data/ext/v8/upstream/build/v8/src/unicode.cc +0 -749
  1112. data/ext/v8/upstream/build/v8/src/unicode.h +0 -279
  1113. data/ext/v8/upstream/build/v8/src/uri.js +0 -415
  1114. data/ext/v8/upstream/build/v8/src/utils.cc +0 -285
  1115. data/ext/v8/upstream/build/v8/src/utils.h +0 -745
  1116. data/ext/v8/upstream/build/v8/src/v8-counters.cc +0 -55
  1117. data/ext/v8/upstream/build/v8/src/v8-counters.h +0 -250
  1118. data/ext/v8/upstream/build/v8/src/v8.cc +0 -228
  1119. data/ext/v8/upstream/build/v8/src/v8.h +0 -121
  1120. data/ext/v8/upstream/build/v8/src/v8dll-main.cc +0 -39
  1121. data/ext/v8/upstream/build/v8/src/v8natives.js +0 -1188
  1122. data/ext/v8/upstream/build/v8/src/v8threads.cc +0 -461
  1123. data/ext/v8/upstream/build/v8/src/v8threads.h +0 -159
  1124. data/ext/v8/upstream/build/v8/src/variables.cc +0 -119
  1125. data/ext/v8/upstream/build/v8/src/variables.h +0 -205
  1126. data/ext/v8/upstream/build/v8/src/version.cc +0 -88
  1127. data/ext/v8/upstream/build/v8/src/version.h +0 -64
  1128. data/ext/v8/upstream/build/v8/src/virtual-frame-heavy-inl.h +0 -192
  1129. data/ext/v8/upstream/build/v8/src/virtual-frame-heavy.cc +0 -312
  1130. data/ext/v8/upstream/build/v8/src/virtual-frame-inl.h +0 -39
  1131. data/ext/v8/upstream/build/v8/src/virtual-frame-light-inl.h +0 -170
  1132. data/ext/v8/upstream/build/v8/src/virtual-frame-light.cc +0 -52
  1133. data/ext/v8/upstream/build/v8/src/virtual-frame.cc +0 -49
  1134. data/ext/v8/upstream/build/v8/src/virtual-frame.h +0 -46
  1135. data/ext/v8/upstream/build/v8/src/vm-state-inl.h +0 -137
  1136. data/ext/v8/upstream/build/v8/src/vm-state.cc +0 -39
  1137. data/ext/v8/upstream/build/v8/src/vm-state.h +0 -77
  1138. data/ext/v8/upstream/build/v8/src/x64/assembler-x64-inl.h +0 -400
  1139. data/ext/v8/upstream/build/v8/src/x64/assembler-x64.cc +0 -2963
  1140. data/ext/v8/upstream/build/v8/src/x64/assembler-x64.h +0 -1438
  1141. data/ext/v8/upstream/build/v8/src/x64/builtins-x64.cc +0 -1296
  1142. data/ext/v8/upstream/build/v8/src/x64/codegen-x64-inl.h +0 -46
  1143. data/ext/v8/upstream/build/v8/src/x64/codegen-x64.cc +0 -12491
  1144. data/ext/v8/upstream/build/v8/src/x64/codegen-x64.h +0 -1090
  1145. data/ext/v8/upstream/build/v8/src/x64/cpu-x64.cc +0 -83
  1146. data/ext/v8/upstream/build/v8/src/x64/debug-x64.cc +0 -267
  1147. data/ext/v8/upstream/build/v8/src/x64/disasm-x64.cc +0 -1696
  1148. data/ext/v8/upstream/build/v8/src/x64/fast-codegen-x64.cc +0 -250
  1149. data/ext/v8/upstream/build/v8/src/x64/frames-x64.cc +0 -113
  1150. data/ext/v8/upstream/build/v8/src/x64/frames-x64.h +0 -125
  1151. data/ext/v8/upstream/build/v8/src/x64/full-codegen-x64.cc +0 -3270
  1152. data/ext/v8/upstream/build/v8/src/x64/ic-x64.cc +0 -1907
  1153. data/ext/v8/upstream/build/v8/src/x64/jump-target-x64.cc +0 -437
  1154. data/ext/v8/upstream/build/v8/src/x64/macro-assembler-x64.cc +0 -2793
  1155. data/ext/v8/upstream/build/v8/src/x64/macro-assembler-x64.h +0 -916
  1156. data/ext/v8/upstream/build/v8/src/x64/regexp-macro-assembler-x64.cc +0 -1374
  1157. data/ext/v8/upstream/build/v8/src/x64/regexp-macro-assembler-x64.h +0 -277
  1158. data/ext/v8/upstream/build/v8/src/x64/register-allocator-x64-inl.h +0 -87
  1159. data/ext/v8/upstream/build/v8/src/x64/register-allocator-x64.cc +0 -91
  1160. data/ext/v8/upstream/build/v8/src/x64/register-allocator-x64.h +0 -43
  1161. data/ext/v8/upstream/build/v8/src/x64/simulator-x64.cc +0 -27
  1162. data/ext/v8/upstream/build/v8/src/x64/simulator-x64.h +0 -63
  1163. data/ext/v8/upstream/build/v8/src/x64/stub-cache-x64.cc +0 -2560
  1164. data/ext/v8/upstream/build/v8/src/x64/virtual-frame-x64.cc +0 -1264
  1165. data/ext/v8/upstream/build/v8/src/x64/virtual-frame-x64.h +0 -590
  1166. data/ext/v8/upstream/build/v8/src/zone-inl.h +0 -82
  1167. data/ext/v8/upstream/build/v8/src/zone.cc +0 -194
  1168. data/ext/v8/upstream/build/v8/src/zone.h +0 -221
  1169. data/ext/v8/upstream/build/v8/tools/codemap.js +0 -270
  1170. data/ext/v8/upstream/build/v8/tools/consarray.js +0 -93
  1171. data/ext/v8/upstream/build/v8/tools/csvparser.js +0 -83
  1172. data/ext/v8/upstream/build/v8/tools/gc-nvp-trace-processor.py +0 -317
  1173. data/ext/v8/upstream/build/v8/tools/generate-ten-powers.scm +0 -286
  1174. data/ext/v8/upstream/build/v8/tools/gyp/v8.gyp +0 -749
  1175. data/ext/v8/upstream/build/v8/tools/js2c.py +0 -380
  1176. data/ext/v8/upstream/build/v8/tools/jsmin.py +0 -280
  1177. data/ext/v8/upstream/build/v8/tools/linux-tick-processor +0 -33
  1178. data/ext/v8/upstream/build/v8/tools/linux-tick-processor.py +0 -78
  1179. data/ext/v8/upstream/build/v8/tools/logreader.js +0 -338
  1180. data/ext/v8/upstream/build/v8/tools/mac-nm +0 -18
  1181. data/ext/v8/upstream/build/v8/tools/mac-tick-processor +0 -6
  1182. data/ext/v8/upstream/build/v8/tools/oprofile/annotate +0 -7
  1183. data/ext/v8/upstream/build/v8/tools/oprofile/common +0 -19
  1184. data/ext/v8/upstream/build/v8/tools/oprofile/dump +0 -7
  1185. data/ext/v8/upstream/build/v8/tools/oprofile/report +0 -7
  1186. data/ext/v8/upstream/build/v8/tools/oprofile/reset +0 -7
  1187. data/ext/v8/upstream/build/v8/tools/oprofile/run +0 -14
  1188. data/ext/v8/upstream/build/v8/tools/oprofile/shutdown +0 -7
  1189. data/ext/v8/upstream/build/v8/tools/oprofile/start +0 -7
  1190. data/ext/v8/upstream/build/v8/tools/presubmit.py +0 -299
  1191. data/ext/v8/upstream/build/v8/tools/process-heap-prof.py +0 -120
  1192. data/ext/v8/upstream/build/v8/tools/profile.js +0 -691
  1193. data/ext/v8/upstream/build/v8/tools/profile_view.js +0 -224
  1194. data/ext/v8/upstream/build/v8/tools/run-valgrind.py +0 -77
  1195. data/ext/v8/upstream/build/v8/tools/splaytree.js +0 -322
  1196. data/ext/v8/upstream/build/v8/tools/splaytree.py +0 -226
  1197. data/ext/v8/upstream/build/v8/tools/stats-viewer.py +0 -468
  1198. data/ext/v8/upstream/build/v8/tools/tickprocessor-driver.js +0 -59
  1199. data/ext/v8/upstream/build/v8/tools/tickprocessor.js +0 -862
  1200. data/ext/v8/upstream/build/v8/tools/tickprocessor.py +0 -571
  1201. data/ext/v8/upstream/build/v8/tools/utils.py +0 -88
  1202. data/ext/v8/upstream/build/v8/tools/visual_studio/README.txt +0 -71
  1203. data/ext/v8/upstream/build/v8/tools/visual_studio/arm.vsprops +0 -14
  1204. data/ext/v8/upstream/build/v8/tools/visual_studio/common.vsprops +0 -34
  1205. data/ext/v8/upstream/build/v8/tools/visual_studio/d8.vcproj +0 -193
  1206. data/ext/v8/upstream/build/v8/tools/visual_studio/d8_arm.vcproj +0 -193
  1207. data/ext/v8/upstream/build/v8/tools/visual_studio/d8_x64.vcproj +0 -209
  1208. data/ext/v8/upstream/build/v8/tools/visual_studio/d8js2c.cmd +0 -6
  1209. data/ext/v8/upstream/build/v8/tools/visual_studio/debug.vsprops +0 -17
  1210. data/ext/v8/upstream/build/v8/tools/visual_studio/ia32.vsprops +0 -17
  1211. data/ext/v8/upstream/build/v8/tools/visual_studio/js2c.cmd +0 -6
  1212. data/ext/v8/upstream/build/v8/tools/visual_studio/release.vsprops +0 -24
  1213. data/ext/v8/upstream/build/v8/tools/visual_studio/v8.sln +0 -101
  1214. data/ext/v8/upstream/build/v8/tools/visual_studio/v8.vcproj +0 -227
  1215. data/ext/v8/upstream/build/v8/tools/visual_studio/v8_arm.sln +0 -74
  1216. data/ext/v8/upstream/build/v8/tools/visual_studio/v8_arm.vcproj +0 -227
  1217. data/ext/v8/upstream/build/v8/tools/visual_studio/v8_base.vcproj +0 -1143
  1218. data/ext/v8/upstream/build/v8/tools/visual_studio/v8_base_arm.vcproj +0 -1115
  1219. data/ext/v8/upstream/build/v8/tools/visual_studio/v8_base_x64.vcproj +0 -1096
  1220. data/ext/v8/upstream/build/v8/tools/visual_studio/v8_cctest.vcproj +0 -265
  1221. data/ext/v8/upstream/build/v8/tools/visual_studio/v8_cctest_arm.vcproj +0 -249
  1222. data/ext/v8/upstream/build/v8/tools/visual_studio/v8_cctest_x64.vcproj +0 -257
  1223. data/ext/v8/upstream/build/v8/tools/visual_studio/v8_mksnapshot.vcproj +0 -145
  1224. data/ext/v8/upstream/build/v8/tools/visual_studio/v8_mksnapshot_x64.vcproj +0 -145
  1225. data/ext/v8/upstream/build/v8/tools/visual_studio/v8_process_sample.vcproj +0 -145
  1226. data/ext/v8/upstream/build/v8/tools/visual_studio/v8_process_sample_arm.vcproj +0 -145
  1227. data/ext/v8/upstream/build/v8/tools/visual_studio/v8_process_sample_x64.vcproj +0 -161
  1228. data/ext/v8/upstream/build/v8/tools/visual_studio/v8_shell_sample.vcproj +0 -145
  1229. data/ext/v8/upstream/build/v8/tools/visual_studio/v8_shell_sample_arm.vcproj +0 -145
  1230. data/ext/v8/upstream/build/v8/tools/visual_studio/v8_shell_sample_x64.vcproj +0 -161
  1231. data/ext/v8/upstream/build/v8/tools/visual_studio/v8_snapshot.vcproj +0 -142
  1232. data/ext/v8/upstream/build/v8/tools/visual_studio/v8_snapshot_cc.vcproj +0 -92
  1233. data/ext/v8/upstream/build/v8/tools/visual_studio/v8_snapshot_cc_x64.vcproj +0 -92
  1234. data/ext/v8/upstream/build/v8/tools/visual_studio/v8_snapshot_x64.vcproj +0 -142
  1235. data/ext/v8/upstream/build/v8/tools/visual_studio/v8_x64.sln +0 -101
  1236. data/ext/v8/upstream/build/v8/tools/visual_studio/v8_x64.vcproj +0 -227
  1237. data/ext/v8/upstream/build/v8/tools/visual_studio/x64.vsprops +0 -17
  1238. data/ext/v8/upstream/build/v8/tools/windows-tick-processor.bat +0 -29
  1239. data/ext/v8/upstream/build/v8/tools/windows-tick-processor.py +0 -137
@@ -1,1984 +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
- #ifndef V8_HEAP_H_
29
- #define V8_HEAP_H_
30
-
31
- #include <math.h>
32
-
33
- #include "splay-tree-inl.h"
34
- #include "v8-counters.h"
35
-
36
- namespace v8 {
37
- namespace internal {
38
-
39
-
40
- // Defines all the roots in Heap.
41
- #define UNCONDITIONAL_STRONG_ROOT_LIST(V) \
42
- /* Put the byte array map early. We need it to be in place by the time */ \
43
- /* the deserializer hits the next page, since it wants to put a byte */ \
44
- /* array in the unused space at the end of the page. */ \
45
- V(Map, byte_array_map, ByteArrayMap) \
46
- V(Map, one_pointer_filler_map, OnePointerFillerMap) \
47
- V(Map, two_pointer_filler_map, TwoPointerFillerMap) \
48
- /* Cluster the most popular ones in a few cache lines here at the top. */ \
49
- V(Smi, stack_limit, StackLimit) \
50
- V(Object, undefined_value, UndefinedValue) \
51
- V(Object, the_hole_value, TheHoleValue) \
52
- V(Object, null_value, NullValue) \
53
- V(Object, true_value, TrueValue) \
54
- V(Object, false_value, FalseValue) \
55
- V(Map, heap_number_map, HeapNumberMap) \
56
- V(Map, global_context_map, GlobalContextMap) \
57
- V(Map, fixed_array_map, FixedArrayMap) \
58
- V(Object, no_interceptor_result_sentinel, NoInterceptorResultSentinel) \
59
- V(Map, meta_map, MetaMap) \
60
- V(Object, termination_exception, TerminationException) \
61
- V(Map, hash_table_map, HashTableMap) \
62
- V(FixedArray, empty_fixed_array, EmptyFixedArray) \
63
- V(Map, string_map, StringMap) \
64
- V(Map, ascii_string_map, AsciiStringMap) \
65
- V(Map, symbol_map, SymbolMap) \
66
- V(Map, ascii_symbol_map, AsciiSymbolMap) \
67
- V(Map, cons_symbol_map, ConsSymbolMap) \
68
- V(Map, cons_ascii_symbol_map, ConsAsciiSymbolMap) \
69
- V(Map, external_symbol_map, ExternalSymbolMap) \
70
- V(Map, external_symbol_with_ascii_data_map, ExternalSymbolWithAsciiDataMap) \
71
- V(Map, external_ascii_symbol_map, ExternalAsciiSymbolMap) \
72
- V(Map, cons_string_map, ConsStringMap) \
73
- V(Map, cons_ascii_string_map, ConsAsciiStringMap) \
74
- V(Map, external_string_map, ExternalStringMap) \
75
- V(Map, external_string_with_ascii_data_map, ExternalStringWithAsciiDataMap) \
76
- V(Map, external_ascii_string_map, ExternalAsciiStringMap) \
77
- V(Map, undetectable_string_map, UndetectableStringMap) \
78
- V(Map, undetectable_ascii_string_map, UndetectableAsciiStringMap) \
79
- V(Map, pixel_array_map, PixelArrayMap) \
80
- V(Map, external_byte_array_map, ExternalByteArrayMap) \
81
- V(Map, external_unsigned_byte_array_map, ExternalUnsignedByteArrayMap) \
82
- V(Map, external_short_array_map, ExternalShortArrayMap) \
83
- V(Map, external_unsigned_short_array_map, ExternalUnsignedShortArrayMap) \
84
- V(Map, external_int_array_map, ExternalIntArrayMap) \
85
- V(Map, external_unsigned_int_array_map, ExternalUnsignedIntArrayMap) \
86
- V(Map, external_float_array_map, ExternalFloatArrayMap) \
87
- V(Map, context_map, ContextMap) \
88
- V(Map, catch_context_map, CatchContextMap) \
89
- V(Map, code_map, CodeMap) \
90
- V(Map, oddball_map, OddballMap) \
91
- V(Map, global_property_cell_map, GlobalPropertyCellMap) \
92
- V(Map, shared_function_info_map, SharedFunctionInfoMap) \
93
- V(Map, proxy_map, ProxyMap) \
94
- V(Object, nan_value, NanValue) \
95
- V(Object, minus_zero_value, MinusZeroValue) \
96
- V(Object, instanceof_cache_function, InstanceofCacheFunction) \
97
- V(Object, instanceof_cache_map, InstanceofCacheMap) \
98
- V(Object, instanceof_cache_answer, InstanceofCacheAnswer) \
99
- V(String, empty_string, EmptyString) \
100
- V(DescriptorArray, empty_descriptor_array, EmptyDescriptorArray) \
101
- V(Map, neander_map, NeanderMap) \
102
- V(JSObject, message_listeners, MessageListeners) \
103
- V(Proxy, prototype_accessors, PrototypeAccessors) \
104
- V(NumberDictionary, code_stubs, CodeStubs) \
105
- V(NumberDictionary, non_monomorphic_cache, NonMonomorphicCache) \
106
- V(Code, js_entry_code, JsEntryCode) \
107
- V(Code, js_construct_entry_code, JsConstructEntryCode) \
108
- V(Code, c_entry_code, CEntryCode) \
109
- V(FixedArray, number_string_cache, NumberStringCache) \
110
- V(FixedArray, single_character_string_cache, SingleCharacterStringCache) \
111
- V(FixedArray, natives_source_cache, NativesSourceCache) \
112
- V(Object, last_script_id, LastScriptId) \
113
- V(Script, empty_script, EmptyScript) \
114
- V(Smi, real_stack_limit, RealStackLimit) \
115
-
116
- #if V8_TARGET_ARCH_ARM && !V8_INTERPRETED_REGEXP
117
- #define STRONG_ROOT_LIST(V) \
118
- UNCONDITIONAL_STRONG_ROOT_LIST(V) \
119
- V(Code, re_c_entry_code, RegExpCEntryCode)
120
- #else
121
- #define STRONG_ROOT_LIST(V) UNCONDITIONAL_STRONG_ROOT_LIST(V)
122
- #endif
123
-
124
- #define ROOT_LIST(V) \
125
- STRONG_ROOT_LIST(V) \
126
- V(SymbolTable, symbol_table, SymbolTable)
127
-
128
- #define SYMBOL_LIST(V) \
129
- V(Array_symbol, "Array") \
130
- V(Object_symbol, "Object") \
131
- V(Proto_symbol, "__proto__") \
132
- V(StringImpl_symbol, "StringImpl") \
133
- V(arguments_symbol, "arguments") \
134
- V(Arguments_symbol, "Arguments") \
135
- V(arguments_shadow_symbol, ".arguments") \
136
- V(call_symbol, "call") \
137
- V(apply_symbol, "apply") \
138
- V(caller_symbol, "caller") \
139
- V(boolean_symbol, "boolean") \
140
- V(Boolean_symbol, "Boolean") \
141
- V(callee_symbol, "callee") \
142
- V(constructor_symbol, "constructor") \
143
- V(code_symbol, ".code") \
144
- V(result_symbol, ".result") \
145
- V(catch_var_symbol, ".catch-var") \
146
- V(empty_symbol, "") \
147
- V(eval_symbol, "eval") \
148
- V(function_symbol, "function") \
149
- V(length_symbol, "length") \
150
- V(name_symbol, "name") \
151
- V(number_symbol, "number") \
152
- V(Number_symbol, "Number") \
153
- V(RegExp_symbol, "RegExp") \
154
- V(source_symbol, "source") \
155
- V(global_symbol, "global") \
156
- V(ignore_case_symbol, "ignoreCase") \
157
- V(multiline_symbol, "multiline") \
158
- V(input_symbol, "input") \
159
- V(index_symbol, "index") \
160
- V(last_index_symbol, "lastIndex") \
161
- V(object_symbol, "object") \
162
- V(prototype_symbol, "prototype") \
163
- V(string_symbol, "string") \
164
- V(String_symbol, "String") \
165
- V(Date_symbol, "Date") \
166
- V(this_symbol, "this") \
167
- V(to_string_symbol, "toString") \
168
- V(char_at_symbol, "CharAt") \
169
- V(undefined_symbol, "undefined") \
170
- V(value_of_symbol, "valueOf") \
171
- V(InitializeVarGlobal_symbol, "InitializeVarGlobal") \
172
- V(InitializeConstGlobal_symbol, "InitializeConstGlobal") \
173
- V(stack_overflow_symbol, "kStackOverflowBoilerplate") \
174
- V(illegal_access_symbol, "illegal access") \
175
- V(out_of_memory_symbol, "out-of-memory") \
176
- V(illegal_execution_state_symbol, "illegal execution state") \
177
- V(get_symbol, "get") \
178
- V(set_symbol, "set") \
179
- V(function_class_symbol, "Function") \
180
- V(illegal_argument_symbol, "illegal argument") \
181
- V(MakeReferenceError_symbol, "MakeReferenceError") \
182
- V(MakeSyntaxError_symbol, "MakeSyntaxError") \
183
- V(MakeTypeError_symbol, "MakeTypeError") \
184
- V(invalid_lhs_in_assignment_symbol, "invalid_lhs_in_assignment") \
185
- V(invalid_lhs_in_for_in_symbol, "invalid_lhs_in_for_in") \
186
- V(invalid_lhs_in_postfix_op_symbol, "invalid_lhs_in_postfix_op") \
187
- V(invalid_lhs_in_prefix_op_symbol, "invalid_lhs_in_prefix_op") \
188
- V(illegal_return_symbol, "illegal_return") \
189
- V(illegal_break_symbol, "illegal_break") \
190
- V(illegal_continue_symbol, "illegal_continue") \
191
- V(unknown_label_symbol, "unknown_label") \
192
- V(redeclaration_symbol, "redeclaration") \
193
- V(failure_symbol, "<failure>") \
194
- V(space_symbol, " ") \
195
- V(exec_symbol, "exec") \
196
- V(zero_symbol, "0") \
197
- V(global_eval_symbol, "GlobalEval") \
198
- V(identity_hash_symbol, "v8::IdentityHash") \
199
- V(closure_symbol, "(closure)")
200
-
201
-
202
- // Forward declaration of the GCTracer class.
203
- class GCTracer;
204
- class HeapStats;
205
-
206
-
207
- typedef String* (*ExternalStringTableUpdaterCallback)(Object** pointer);
208
-
209
- typedef bool (*DirtyRegionCallback)(Address start,
210
- Address end,
211
- ObjectSlotCallback copy_object_func);
212
-
213
-
214
- // The all static Heap captures the interface to the global object heap.
215
- // All JavaScript contexts by this process share the same object heap.
216
-
217
- class Heap : public AllStatic {
218
- public:
219
- // Configure heap size before setup. Return false if the heap has been
220
- // setup already.
221
- static bool ConfigureHeap(int max_semispace_size, int max_old_gen_size);
222
- static bool ConfigureHeapDefault();
223
-
224
- // Initializes the global object heap. If create_heap_objects is true,
225
- // also creates the basic non-mutable objects.
226
- // Returns whether it succeeded.
227
- static bool Setup(bool create_heap_objects);
228
-
229
- // Destroys all memory allocated by the heap.
230
- static void TearDown();
231
-
232
- // Set the stack limit in the roots_ array. Some architectures generate
233
- // code that looks here, because it is faster than loading from the static
234
- // jslimit_/real_jslimit_ variable in the StackGuard.
235
- static void SetStackLimits();
236
-
237
- // Returns whether Setup has been called.
238
- static bool HasBeenSetup();
239
-
240
- // Returns the maximum amount of memory reserved for the heap. For
241
- // the young generation, we reserve 4 times the amount needed for a
242
- // semi space. The young generation consists of two semi spaces and
243
- // we reserve twice the amount needed for those in order to ensure
244
- // that new space can be aligned to its size.
245
- static int MaxReserved() {
246
- return 4 * reserved_semispace_size_ + max_old_generation_size_;
247
- }
248
- static int MaxSemiSpaceSize() { return max_semispace_size_; }
249
- static int ReservedSemiSpaceSize() { return reserved_semispace_size_; }
250
- static int InitialSemiSpaceSize() { return initial_semispace_size_; }
251
- static int MaxOldGenerationSize() { return max_old_generation_size_; }
252
-
253
- // Returns the capacity of the heap in bytes w/o growing. Heap grows when
254
- // more spaces are needed until it reaches the limit.
255
- static int Capacity();
256
-
257
- // Returns the amount of memory currently committed for the heap.
258
- static int CommittedMemory();
259
-
260
- // Returns the available bytes in space w/o growing.
261
- // Heap doesn't guarantee that it can allocate an object that requires
262
- // all available bytes. Check MaxHeapObjectSize() instead.
263
- static int Available();
264
-
265
- // Returns the maximum object size in paged space.
266
- static inline int MaxObjectSizeInPagedSpace();
267
-
268
- // Returns of size of all objects residing in the heap.
269
- static int SizeOfObjects();
270
-
271
- // Return the starting address and a mask for the new space. And-masking an
272
- // address with the mask will result in the start address of the new space
273
- // for all addresses in either semispace.
274
- static Address NewSpaceStart() { return new_space_.start(); }
275
- static uintptr_t NewSpaceMask() { return new_space_.mask(); }
276
- static Address NewSpaceTop() { return new_space_.top(); }
277
-
278
- static NewSpace* new_space() { return &new_space_; }
279
- static OldSpace* old_pointer_space() { return old_pointer_space_; }
280
- static OldSpace* old_data_space() { return old_data_space_; }
281
- static OldSpace* code_space() { return code_space_; }
282
- static MapSpace* map_space() { return map_space_; }
283
- static CellSpace* cell_space() { return cell_space_; }
284
- static LargeObjectSpace* lo_space() { return lo_space_; }
285
-
286
- static bool always_allocate() { return always_allocate_scope_depth_ != 0; }
287
- static Address always_allocate_scope_depth_address() {
288
- return reinterpret_cast<Address>(&always_allocate_scope_depth_);
289
- }
290
- static bool linear_allocation() {
291
- return linear_allocation_scope_depth_ != 0;
292
- }
293
-
294
- static Address* NewSpaceAllocationTopAddress() {
295
- return new_space_.allocation_top_address();
296
- }
297
- static Address* NewSpaceAllocationLimitAddress() {
298
- return new_space_.allocation_limit_address();
299
- }
300
-
301
- // Uncommit unused semi space.
302
- static bool UncommitFromSpace() { return new_space_.UncommitFromSpace(); }
303
-
304
- #ifdef ENABLE_HEAP_PROTECTION
305
- // Protect/unprotect the heap by marking all spaces read-only/writable.
306
- static void Protect();
307
- static void Unprotect();
308
- #endif
309
-
310
- // Allocates and initializes a new JavaScript object based on a
311
- // constructor.
312
- // Returns Failure::RetryAfterGC(requested_bytes, space) if the allocation
313
- // failed.
314
- // Please note this does not perform a garbage collection.
315
- static Object* AllocateJSObject(JSFunction* constructor,
316
- PretenureFlag pretenure = NOT_TENURED);
317
-
318
- // Allocates and initializes a new global object based on a constructor.
319
- // Returns Failure::RetryAfterGC(requested_bytes, space) if the allocation
320
- // failed.
321
- // Please note this does not perform a garbage collection.
322
- static Object* AllocateGlobalObject(JSFunction* constructor);
323
-
324
- // Returns a deep copy of the JavaScript object.
325
- // Properties and elements are copied too.
326
- // Returns failure if allocation failed.
327
- static Object* CopyJSObject(JSObject* source);
328
-
329
- // Allocates the function prototype.
330
- // Returns Failure::RetryAfterGC(requested_bytes, space) if the allocation
331
- // failed.
332
- // Please note this does not perform a garbage collection.
333
- static Object* AllocateFunctionPrototype(JSFunction* function);
334
-
335
- // Reinitialize an JSGlobalProxy based on a constructor. The object
336
- // must have the same size as objects allocated using the
337
- // constructor. The object is reinitialized and behaves as an
338
- // object that has been freshly allocated using the constructor.
339
- static Object* ReinitializeJSGlobalProxy(JSFunction* constructor,
340
- JSGlobalProxy* global);
341
-
342
- // Allocates and initializes a new JavaScript object based on a map.
343
- // Returns Failure::RetryAfterGC(requested_bytes, space) if the allocation
344
- // failed.
345
- // Please note this does not perform a garbage collection.
346
- static Object* AllocateJSObjectFromMap(Map* map,
347
- PretenureFlag pretenure = NOT_TENURED);
348
-
349
- // Allocates a heap object based on the map.
350
- // Returns Failure::RetryAfterGC(requested_bytes, space) if the allocation
351
- // failed.
352
- // Please note this function does not perform a garbage collection.
353
- static Object* Allocate(Map* map, AllocationSpace space);
354
-
355
- // Allocates a JS Map in the heap.
356
- // Returns Failure::RetryAfterGC(requested_bytes, space) if the allocation
357
- // failed.
358
- // Please note this function does not perform a garbage collection.
359
- static Object* AllocateMap(InstanceType instance_type, int instance_size);
360
-
361
- // Allocates a partial map for bootstrapping.
362
- static Object* AllocatePartialMap(InstanceType instance_type,
363
- int instance_size);
364
-
365
- // Allocate a map for the specified function
366
- static Object* AllocateInitialMap(JSFunction* fun);
367
-
368
- // Allocates an empty code cache.
369
- static Object* AllocateCodeCache();
370
-
371
- // Clear the Instanceof cache (used when a prototype changes).
372
- static void ClearInstanceofCache() {
373
- set_instanceof_cache_function(the_hole_value());
374
- }
375
-
376
- // Allocates and fully initializes a String. There are two String
377
- // encodings: ASCII and two byte. One should choose between the three string
378
- // allocation functions based on the encoding of the string buffer used to
379
- // initialized the string.
380
- // - ...FromAscii initializes the string from a buffer that is ASCII
381
- // encoded (it does not check that the buffer is ASCII encoded) and the
382
- // result will be ASCII encoded.
383
- // - ...FromUTF8 initializes the string from a buffer that is UTF-8
384
- // encoded. If the characters are all single-byte characters, the
385
- // result will be ASCII encoded, otherwise it will converted to two
386
- // byte.
387
- // - ...FromTwoByte initializes the string from a buffer that is two-byte
388
- // encoded. If the characters are all single-byte characters, the
389
- // result will be converted to ASCII, otherwise it will be left as
390
- // two-byte.
391
- // Returns Failure::RetryAfterGC(requested_bytes, space) if the allocation
392
- // failed.
393
- // Please note this does not perform a garbage collection.
394
- static Object* AllocateStringFromAscii(
395
- Vector<const char> str,
396
- PretenureFlag pretenure = NOT_TENURED);
397
- static Object* AllocateStringFromUtf8(
398
- Vector<const char> str,
399
- PretenureFlag pretenure = NOT_TENURED);
400
- static Object* AllocateStringFromTwoByte(
401
- Vector<const uc16> str,
402
- PretenureFlag pretenure = NOT_TENURED);
403
-
404
- // Allocates a symbol in old space based on the character stream.
405
- // Returns Failure::RetryAfterGC(requested_bytes, space) if the allocation
406
- // failed.
407
- // Please note this function does not perform a garbage collection.
408
- static inline Object* AllocateSymbol(Vector<const char> str,
409
- int chars,
410
- uint32_t hash_field);
411
-
412
- static Object* AllocateInternalSymbol(unibrow::CharacterStream* buffer,
413
- int chars,
414
- uint32_t hash_field);
415
-
416
- static Object* AllocateExternalSymbol(Vector<const char> str,
417
- int chars);
418
-
419
-
420
- // Allocates and partially initializes a String. There are two String
421
- // encodings: ASCII and two byte. These functions allocate a string of the
422
- // given length and set its map and length fields. The characters of the
423
- // string are uninitialized.
424
- // Returns Failure::RetryAfterGC(requested_bytes, space) if the allocation
425
- // failed.
426
- // Please note this does not perform a garbage collection.
427
- static Object* AllocateRawAsciiString(
428
- int length,
429
- PretenureFlag pretenure = NOT_TENURED);
430
- static Object* AllocateRawTwoByteString(
431
- int length,
432
- PretenureFlag pretenure = NOT_TENURED);
433
-
434
- // Computes a single character string where the character has code.
435
- // A cache is used for ascii codes.
436
- // Returns Failure::RetryAfterGC(requested_bytes, space) if the allocation
437
- // failed. Please note this does not perform a garbage collection.
438
- static Object* LookupSingleCharacterStringFromCode(uint16_t code);
439
-
440
- // Allocate a byte array of the specified length
441
- // Returns Failure::RetryAfterGC(requested_bytes, space) if the allocation
442
- // failed.
443
- // Please note this does not perform a garbage collection.
444
- static Object* AllocateByteArray(int length, PretenureFlag pretenure);
445
-
446
- // Allocate a non-tenured byte array of the specified length
447
- // Returns Failure::RetryAfterGC(requested_bytes, space) if the allocation
448
- // failed.
449
- // Please note this does not perform a garbage collection.
450
- static Object* AllocateByteArray(int length);
451
-
452
- // Allocate a pixel array of the specified length
453
- // Returns Failure::RetryAfterGC(requested_bytes, space) if the allocation
454
- // failed.
455
- // Please note this does not perform a garbage collection.
456
- static Object* AllocatePixelArray(int length,
457
- uint8_t* external_pointer,
458
- PretenureFlag pretenure);
459
-
460
- // Allocates an external array of the specified length and type.
461
- // Returns Failure::RetryAfterGC(requested_bytes, space) if the allocation
462
- // failed.
463
- // Please note this does not perform a garbage collection.
464
- static Object* AllocateExternalArray(int length,
465
- ExternalArrayType array_type,
466
- void* external_pointer,
467
- PretenureFlag pretenure);
468
-
469
- // Allocate a tenured JS global property cell.
470
- // Returns Failure::RetryAfterGC(requested_bytes, space) if the allocation
471
- // failed.
472
- // Please note this does not perform a garbage collection.
473
- static Object* AllocateJSGlobalPropertyCell(Object* value);
474
-
475
- // Allocates a fixed array initialized with undefined values
476
- // Returns Failure::RetryAfterGC(requested_bytes, space) if the allocation
477
- // failed.
478
- // Please note this does not perform a garbage collection.
479
- static Object* AllocateFixedArray(int length, PretenureFlag pretenure);
480
- // Allocates a fixed array initialized with undefined values
481
- static Object* AllocateFixedArray(int length);
482
-
483
- // Allocates an uninitialized fixed array. It must be filled by the caller.
484
- //
485
- // Returns Failure::RetryAfterGC(requested_bytes, space) if the allocation
486
- // failed.
487
- // Please note this does not perform a garbage collection.
488
- static Object* AllocateUninitializedFixedArray(int length);
489
-
490
- // Make a copy of src and return it. Returns
491
- // Failure::RetryAfterGC(requested_bytes, space) if the allocation failed.
492
- static Object* CopyFixedArray(FixedArray* src);
493
-
494
- // Allocates a fixed array initialized with the hole values.
495
- // Returns Failure::RetryAfterGC(requested_bytes, space) if the allocation
496
- // failed.
497
- // Please note this does not perform a garbage collection.
498
- static Object* AllocateFixedArrayWithHoles(
499
- int length,
500
- PretenureFlag pretenure = NOT_TENURED);
501
-
502
- // AllocateHashTable is identical to AllocateFixedArray except
503
- // that the resulting object has hash_table_map as map.
504
- static Object* AllocateHashTable(int length,
505
- PretenureFlag pretenure = NOT_TENURED);
506
-
507
- // Allocate a global (but otherwise uninitialized) context.
508
- static Object* AllocateGlobalContext();
509
-
510
- // Allocate a function context.
511
- static Object* AllocateFunctionContext(int length, JSFunction* closure);
512
-
513
- // Allocate a 'with' context.
514
- static Object* AllocateWithContext(Context* previous,
515
- JSObject* extension,
516
- bool is_catch_context);
517
-
518
- // Allocates a new utility object in the old generation.
519
- static Object* AllocateStruct(InstanceType type);
520
-
521
- // Allocates a function initialized with a shared part.
522
- // Returns Failure::RetryAfterGC(requested_bytes, space) if the allocation
523
- // failed.
524
- // Please note this does not perform a garbage collection.
525
- static Object* AllocateFunction(Map* function_map,
526
- SharedFunctionInfo* shared,
527
- Object* prototype,
528
- PretenureFlag pretenure = TENURED);
529
-
530
- // Indicies for direct access into argument objects.
531
- static const int kArgumentsObjectSize =
532
- JSObject::kHeaderSize + 2 * kPointerSize;
533
- static const int arguments_callee_index = 0;
534
- static const int arguments_length_index = 1;
535
-
536
- // Allocates an arguments object - optionally with an elements array.
537
- // Returns Failure::RetryAfterGC(requested_bytes, space) if the allocation
538
- // failed.
539
- // Please note this does not perform a garbage collection.
540
- static Object* AllocateArgumentsObject(Object* callee, int length);
541
-
542
- // Same as NewNumberFromDouble, but may return a preallocated/immutable
543
- // number object (e.g., minus_zero_value_, nan_value_)
544
- static Object* NumberFromDouble(double value,
545
- PretenureFlag pretenure = NOT_TENURED);
546
-
547
- // Allocated a HeapNumber from value.
548
- static Object* AllocateHeapNumber(double value, PretenureFlag pretenure);
549
- static Object* AllocateHeapNumber(double value); // pretenure = NOT_TENURED
550
-
551
- // Converts an int into either a Smi or a HeapNumber object.
552
- // Returns Failure::RetryAfterGC(requested_bytes, space) if the allocation
553
- // failed.
554
- // Please note this does not perform a garbage collection.
555
- static inline Object* NumberFromInt32(int32_t value);
556
-
557
- // Converts an int into either a Smi or a HeapNumber object.
558
- // Returns Failure::RetryAfterGC(requested_bytes, space) if the allocation
559
- // failed.
560
- // Please note this does not perform a garbage collection.
561
- static inline Object* NumberFromUint32(uint32_t value);
562
-
563
- // Allocates a new proxy object.
564
- // Returns Failure::RetryAfterGC(requested_bytes, space) if the allocation
565
- // failed.
566
- // Please note this does not perform a garbage collection.
567
- static Object* AllocateProxy(Address proxy,
568
- PretenureFlag pretenure = NOT_TENURED);
569
-
570
- // Allocates a new SharedFunctionInfo object.
571
- // Returns Failure::RetryAfterGC(requested_bytes, space) if the allocation
572
- // failed.
573
- // Please note this does not perform a garbage collection.
574
- static Object* AllocateSharedFunctionInfo(Object* name);
575
-
576
- // Allocates a new cons string object.
577
- // Returns Failure::RetryAfterGC(requested_bytes, space) if the allocation
578
- // failed.
579
- // Please note this does not perform a garbage collection.
580
- static Object* AllocateConsString(String* first, String* second);
581
-
582
- // Allocates a new sub string object which is a substring of an underlying
583
- // string buffer stretching from the index start (inclusive) to the index
584
- // end (exclusive).
585
- // Returns Failure::RetryAfterGC(requested_bytes, space) if the allocation
586
- // failed.
587
- // Please note this does not perform a garbage collection.
588
- static Object* AllocateSubString(String* buffer,
589
- int start,
590
- int end,
591
- PretenureFlag pretenure = NOT_TENURED);
592
-
593
- // Allocate a new external string object, which is backed by a string
594
- // resource that resides outside the V8 heap.
595
- // Returns Failure::RetryAfterGC(requested_bytes, space) if the allocation
596
- // failed.
597
- // Please note this does not perform a garbage collection.
598
- static Object* AllocateExternalStringFromAscii(
599
- ExternalAsciiString::Resource* resource);
600
- static Object* AllocateExternalStringFromTwoByte(
601
- ExternalTwoByteString::Resource* resource);
602
-
603
- // Finalizes an external string by deleting the associated external
604
- // data and clearing the resource pointer.
605
- static inline void FinalizeExternalString(String* string);
606
-
607
- // Allocates an uninitialized object. The memory is non-executable if the
608
- // hardware and OS allow.
609
- // Returns Failure::RetryAfterGC(requested_bytes, space) if the allocation
610
- // failed.
611
- // Please note this function does not perform a garbage collection.
612
- static inline Object* AllocateRaw(int size_in_bytes,
613
- AllocationSpace space,
614
- AllocationSpace retry_space);
615
-
616
- // Initialize a filler object to keep the ability to iterate over the heap
617
- // when shortening objects.
618
- static void CreateFillerObjectAt(Address addr, int size);
619
-
620
- // Makes a new native code object
621
- // Returns Failure::RetryAfterGC(requested_bytes, space) if the allocation
622
- // failed. On success, the pointer to the Code object is stored in the
623
- // self_reference. This allows generated code to reference its own Code
624
- // object by containing this pointer.
625
- // Please note this function does not perform a garbage collection.
626
- static Object* CreateCode(const CodeDesc& desc,
627
- Code::Flags flags,
628
- Handle<Object> self_reference);
629
-
630
- static Object* CopyCode(Code* code);
631
-
632
- // Copy the code and scope info part of the code object, but insert
633
- // the provided data as the relocation information.
634
- static Object* CopyCode(Code* code, Vector<byte> reloc_info);
635
-
636
- // Finds the symbol for string in the symbol table.
637
- // If not found, a new symbol is added to the table and returned.
638
- // Returns Failure::RetryAfterGC(requested_bytes, space) if allocation
639
- // failed.
640
- // Please note this function does not perform a garbage collection.
641
- static Object* LookupSymbol(Vector<const char> str);
642
- static Object* LookupAsciiSymbol(const char* str) {
643
- return LookupSymbol(CStrVector(str));
644
- }
645
- static Object* LookupSymbol(String* str);
646
- static bool LookupSymbolIfExists(String* str, String** symbol);
647
- static bool LookupTwoCharsSymbolIfExists(String* str, String** symbol);
648
-
649
- // Compute the matching symbol map for a string if possible.
650
- // NULL is returned if string is in new space or not flattened.
651
- static Map* SymbolMapForString(String* str);
652
-
653
- // Tries to flatten a string before compare operation.
654
- //
655
- // Returns a failure in case it was decided that flattening was
656
- // necessary and failed. Note, if flattening is not necessary the
657
- // string might stay non-flat even when not a failure is returned.
658
- //
659
- // Please note this function does not perform a garbage collection.
660
- static inline Object* PrepareForCompare(String* str);
661
-
662
- // Converts the given boolean condition to JavaScript boolean value.
663
- static Object* ToBoolean(bool condition) {
664
- return condition ? true_value() : false_value();
665
- }
666
-
667
- // Code that should be run before and after each GC. Includes some
668
- // reporting/verification activities when compiled with DEBUG set.
669
- static void GarbageCollectionPrologue();
670
- static void GarbageCollectionEpilogue();
671
-
672
- // Performs garbage collection operation.
673
- // Returns whether required_space bytes are available after the collection.
674
- static bool CollectGarbage(int required_space, AllocationSpace space);
675
-
676
- // Performs a full garbage collection. Force compaction if the
677
- // parameter is true.
678
- static void CollectAllGarbage(bool force_compaction);
679
-
680
- // Notify the heap that a context has been disposed.
681
- static int NotifyContextDisposed() { return ++contexts_disposed_; }
682
-
683
- // Utility to invoke the scavenger. This is needed in test code to
684
- // ensure correct callback for weak global handles.
685
- static void PerformScavenge();
686
-
687
- #ifdef DEBUG
688
- // Utility used with flag gc-greedy.
689
- static bool GarbageCollectionGreedyCheck();
690
- #endif
691
-
692
- static void AddGCPrologueCallback(
693
- GCEpilogueCallback callback, GCType gc_type_filter);
694
- static void RemoveGCPrologueCallback(GCEpilogueCallback callback);
695
-
696
- static void AddGCEpilogueCallback(
697
- GCEpilogueCallback callback, GCType gc_type_filter);
698
- static void RemoveGCEpilogueCallback(GCEpilogueCallback callback);
699
-
700
- static void SetGlobalGCPrologueCallback(GCCallback callback) {
701
- ASSERT((callback == NULL) ^ (global_gc_prologue_callback_ == NULL));
702
- global_gc_prologue_callback_ = callback;
703
- }
704
- static void SetGlobalGCEpilogueCallback(GCCallback callback) {
705
- ASSERT((callback == NULL) ^ (global_gc_epilogue_callback_ == NULL));
706
- global_gc_epilogue_callback_ = callback;
707
- }
708
-
709
- // Heap root getters. We have versions with and without type::cast() here.
710
- // You can't use type::cast during GC because the assert fails.
711
- #define ROOT_ACCESSOR(type, name, camel_name) \
712
- static inline type* name() { \
713
- return type::cast(roots_[k##camel_name##RootIndex]); \
714
- } \
715
- static inline type* raw_unchecked_##name() { \
716
- return reinterpret_cast<type*>(roots_[k##camel_name##RootIndex]); \
717
- }
718
- ROOT_LIST(ROOT_ACCESSOR)
719
- #undef ROOT_ACCESSOR
720
-
721
- // Utility type maps
722
- #define STRUCT_MAP_ACCESSOR(NAME, Name, name) \
723
- static inline Map* name##_map() { \
724
- return Map::cast(roots_[k##Name##MapRootIndex]); \
725
- }
726
- STRUCT_LIST(STRUCT_MAP_ACCESSOR)
727
- #undef STRUCT_MAP_ACCESSOR
728
-
729
- #define SYMBOL_ACCESSOR(name, str) static inline String* name() { \
730
- return String::cast(roots_[k##name##RootIndex]); \
731
- }
732
- SYMBOL_LIST(SYMBOL_ACCESSOR)
733
- #undef SYMBOL_ACCESSOR
734
-
735
- // The hidden_symbol is special because it is the empty string, but does
736
- // not match the empty string.
737
- static String* hidden_symbol() { return hidden_symbol_; }
738
-
739
- // Iterates over all roots in the heap.
740
- static void IterateRoots(ObjectVisitor* v, VisitMode mode);
741
- // Iterates over all strong roots in the heap.
742
- static void IterateStrongRoots(ObjectVisitor* v, VisitMode mode);
743
- // Iterates over all the other roots in the heap.
744
- static void IterateWeakRoots(ObjectVisitor* v, VisitMode mode);
745
-
746
- enum ExpectedPageWatermarkState {
747
- WATERMARK_SHOULD_BE_VALID,
748
- WATERMARK_CAN_BE_INVALID
749
- };
750
-
751
- // For each dirty region on a page in use from an old space call
752
- // visit_dirty_region callback.
753
- // If either visit_dirty_region or callback can cause an allocation
754
- // in old space and changes in allocation watermark then
755
- // can_preallocate_during_iteration should be set to true.
756
- // All pages will be marked as having invalid watermark upon
757
- // iteration completion.
758
- static void IterateDirtyRegions(
759
- PagedSpace* space,
760
- DirtyRegionCallback visit_dirty_region,
761
- ObjectSlotCallback callback,
762
- ExpectedPageWatermarkState expected_page_watermark_state);
763
-
764
- // Interpret marks as a bitvector of dirty marks for regions of size
765
- // Page::kRegionSize aligned by Page::kRegionAlignmentMask and covering
766
- // memory interval from start to top. For each dirty region call a
767
- // visit_dirty_region callback. Return updated bitvector of dirty marks.
768
- static uint32_t IterateDirtyRegions(uint32_t marks,
769
- Address start,
770
- Address end,
771
- DirtyRegionCallback visit_dirty_region,
772
- ObjectSlotCallback callback);
773
-
774
- // Iterate pointers to from semispace of new space found in memory interval
775
- // from start to end.
776
- // Update dirty marks for page containing start address.
777
- static void IterateAndMarkPointersToFromSpace(Address start,
778
- Address end,
779
- ObjectSlotCallback callback);
780
-
781
- // Iterate pointers to new space found in memory interval from start to end.
782
- // Return true if pointers to new space was found.
783
- static bool IteratePointersInDirtyRegion(Address start,
784
- Address end,
785
- ObjectSlotCallback callback);
786
-
787
-
788
- // Iterate pointers to new space found in memory interval from start to end.
789
- // This interval is considered to belong to the map space.
790
- // Return true if pointers to new space was found.
791
- static bool IteratePointersInDirtyMapsRegion(Address start,
792
- Address end,
793
- ObjectSlotCallback callback);
794
-
795
-
796
- // Returns whether the object resides in new space.
797
- static inline bool InNewSpace(Object* object);
798
- static inline bool InFromSpace(Object* object);
799
- static inline bool InToSpace(Object* object);
800
-
801
- // Checks whether an address/object in the heap (including auxiliary
802
- // area and unused area).
803
- static bool Contains(Address addr);
804
- static bool Contains(HeapObject* value);
805
-
806
- // Checks whether an address/object in a space.
807
- // Currently used by tests, serialization and heap verification only.
808
- static bool InSpace(Address addr, AllocationSpace space);
809
- static bool InSpace(HeapObject* value, AllocationSpace space);
810
-
811
- // Finds out which space an object should get promoted to based on its type.
812
- static inline OldSpace* TargetSpace(HeapObject* object);
813
- static inline AllocationSpace TargetSpaceId(InstanceType type);
814
-
815
- // Sets the stub_cache_ (only used when expanding the dictionary).
816
- static void public_set_code_stubs(NumberDictionary* value) {
817
- roots_[kCodeStubsRootIndex] = value;
818
- }
819
-
820
- // Sets the non_monomorphic_cache_ (only used when expanding the dictionary).
821
- static void public_set_non_monomorphic_cache(NumberDictionary* value) {
822
- roots_[kNonMonomorphicCacheRootIndex] = value;
823
- }
824
-
825
- static void public_set_empty_script(Script* script) {
826
- roots_[kEmptyScriptRootIndex] = script;
827
- }
828
-
829
- // Update the next script id.
830
- static inline void SetLastScriptId(Object* last_script_id);
831
-
832
- // Generated code can embed this address to get access to the roots.
833
- static Object** roots_address() { return roots_; }
834
-
835
- #ifdef DEBUG
836
- static void Print();
837
- static void PrintHandles();
838
-
839
- // Verify the heap is in its normal state before or after a GC.
840
- static void Verify();
841
-
842
- // Report heap statistics.
843
- static void ReportHeapStatistics(const char* title);
844
- static void ReportCodeStatistics(const char* title);
845
-
846
- // Fill in bogus values in from space
847
- static void ZapFromSpace();
848
- #endif
849
-
850
- #if defined(ENABLE_LOGGING_AND_PROFILING)
851
- // Print short heap statistics.
852
- static void PrintShortHeapStatistics();
853
- #endif
854
-
855
- // Makes a new symbol object
856
- // Returns Failure::RetryAfterGC(requested_bytes, space) if the allocation
857
- // failed.
858
- // Please note this function does not perform a garbage collection.
859
- static Object* CreateSymbol(const char* str, int length, int hash);
860
- static Object* CreateSymbol(String* str);
861
-
862
- // Write barrier support for address[offset] = o.
863
- static inline void RecordWrite(Address address, int offset);
864
-
865
- // Write barrier support for address[start : start + len[ = o.
866
- static inline void RecordWrites(Address address, int start, int len);
867
-
868
- // Given an address occupied by a live code object, return that object.
869
- static Object* FindCodeObject(Address a);
870
-
871
- // Invoke Shrink on shrinkable spaces.
872
- static void Shrink();
873
-
874
- enum HeapState { NOT_IN_GC, SCAVENGE, MARK_COMPACT };
875
- static inline HeapState gc_state() { return gc_state_; }
876
-
877
- #ifdef DEBUG
878
- static bool IsAllocationAllowed() { return allocation_allowed_; }
879
- static inline bool allow_allocation(bool enable);
880
-
881
- static bool disallow_allocation_failure() {
882
- return disallow_allocation_failure_;
883
- }
884
-
885
- static void TracePathToObject(Object* target);
886
- static void TracePathToGlobal();
887
- #endif
888
-
889
- // Callback function passed to Heap::Iterate etc. Copies an object if
890
- // necessary, the object might be promoted to an old space. The caller must
891
- // ensure the precondition that the object is (a) a heap object and (b) in
892
- // the heap's from space.
893
- static void ScavengePointer(HeapObject** p);
894
- static inline void ScavengeObject(HeapObject** p, HeapObject* object);
895
-
896
- // Commits from space if it is uncommitted.
897
- static void EnsureFromSpaceIsCommitted();
898
-
899
- // Support for partial snapshots. After calling this we can allocate a
900
- // certain number of bytes using only linear allocation (with a
901
- // LinearAllocationScope and an AlwaysAllocateScope) without using freelists
902
- // or causing a GC. It returns true of space was reserved or false if a GC is
903
- // needed. For paged spaces the space requested must include the space wasted
904
- // at the end of each page when allocating linearly.
905
- static void ReserveSpace(
906
- int new_space_size,
907
- int pointer_space_size,
908
- int data_space_size,
909
- int code_space_size,
910
- int map_space_size,
911
- int cell_space_size,
912
- int large_object_size);
913
-
914
- //
915
- // Support for the API.
916
- //
917
-
918
- static bool CreateApiObjects();
919
-
920
- // Attempt to find the number in a small cache. If we finds it, return
921
- // the string representation of the number. Otherwise return undefined.
922
- static Object* GetNumberStringCache(Object* number);
923
-
924
- // Update the cache with a new number-string pair.
925
- static void SetNumberStringCache(Object* number, String* str);
926
-
927
- // Adjusts the amount of registered external memory.
928
- // Returns the adjusted value.
929
- static inline int AdjustAmountOfExternalAllocatedMemory(int change_in_bytes);
930
-
931
- // Allocate uninitialized fixed array.
932
- static Object* AllocateRawFixedArray(int length);
933
- static Object* AllocateRawFixedArray(int length,
934
- PretenureFlag pretenure);
935
-
936
- // True if we have reached the allocation limit in the old generation that
937
- // should force the next GC (caused normally) to be a full one.
938
- static bool OldGenerationPromotionLimitReached() {
939
- return (PromotedSpaceSize() + PromotedExternalMemorySize())
940
- > old_gen_promotion_limit_;
941
- }
942
-
943
- static intptr_t OldGenerationSpaceAvailable() {
944
- return old_gen_allocation_limit_ -
945
- (PromotedSpaceSize() + PromotedExternalMemorySize());
946
- }
947
-
948
- // True if we have reached the allocation limit in the old generation that
949
- // should artificially cause a GC right now.
950
- static bool OldGenerationAllocationLimitReached() {
951
- return OldGenerationSpaceAvailable() < 0;
952
- }
953
-
954
- // Can be called when the embedding application is idle.
955
- static bool IdleNotification();
956
-
957
- // Declare all the root indices.
958
- enum RootListIndex {
959
- #define ROOT_INDEX_DECLARATION(type, name, camel_name) k##camel_name##RootIndex,
960
- STRONG_ROOT_LIST(ROOT_INDEX_DECLARATION)
961
- #undef ROOT_INDEX_DECLARATION
962
-
963
- // Utility type maps
964
- #define DECLARE_STRUCT_MAP(NAME, Name, name) k##Name##MapRootIndex,
965
- STRUCT_LIST(DECLARE_STRUCT_MAP)
966
- #undef DECLARE_STRUCT_MAP
967
-
968
- #define SYMBOL_INDEX_DECLARATION(name, str) k##name##RootIndex,
969
- SYMBOL_LIST(SYMBOL_INDEX_DECLARATION)
970
- #undef SYMBOL_DECLARATION
971
-
972
- kSymbolTableRootIndex,
973
- kStrongRootListLength = kSymbolTableRootIndex,
974
- kRootListLength
975
- };
976
-
977
- static Object* NumberToString(Object* number,
978
- bool check_number_string_cache = true);
979
-
980
- static Map* MapForExternalArrayType(ExternalArrayType array_type);
981
- static RootListIndex RootIndexForExternalArrayType(
982
- ExternalArrayType array_type);
983
-
984
- static void RecordStats(HeapStats* stats);
985
-
986
- static Scavenger GetScavenger(int instance_type, int instance_size);
987
-
988
- // Copy block of memory from src to dst. Size of block should be aligned
989
- // by pointer size.
990
- static inline void CopyBlock(Address dst, Address src, int byte_size);
991
-
992
- static inline void CopyBlockToOldSpaceAndUpdateRegionMarks(Address dst,
993
- Address src,
994
- int byte_size);
995
-
996
- // Optimized version of memmove for blocks with pointer size aligned sizes and
997
- // pointer size aligned addresses.
998
- static inline void MoveBlock(Address dst, Address src, int byte_size);
999
-
1000
- static inline void MoveBlockToOldSpaceAndUpdateRegionMarks(Address dst,
1001
- Address src,
1002
- int byte_size);
1003
-
1004
- // Check new space expansion criteria and expand semispaces if it was hit.
1005
- static void CheckNewSpaceExpansionCriteria();
1006
-
1007
- static inline void IncrementYoungSurvivorsCounter(int survived) {
1008
- young_survivors_after_last_gc_ = survived;
1009
- survived_since_last_expansion_ += survived;
1010
- }
1011
-
1012
- static void UpdateNewSpaceReferencesInExternalStringTable(
1013
- ExternalStringTableUpdaterCallback updater_func);
1014
-
1015
- // Helper function that governs the promotion policy from new space to
1016
- // old. If the object's old address lies below the new space's age
1017
- // mark or if we've already filled the bottom 1/16th of the to space,
1018
- // we try to promote this object.
1019
- static inline bool ShouldBePromoted(Address old_address, int object_size);
1020
-
1021
- static int MaxObjectSizeInNewSpace() { return kMaxObjectSizeInNewSpace; }
1022
-
1023
- static void ClearJSFunctionResultCaches();
1024
-
1025
- static GCTracer* tracer() { return tracer_; }
1026
-
1027
- private:
1028
- static int reserved_semispace_size_;
1029
- static int max_semispace_size_;
1030
- static int initial_semispace_size_;
1031
- static int max_old_generation_size_;
1032
- static size_t code_range_size_;
1033
-
1034
- // For keeping track of how much data has survived
1035
- // scavenge since last new space expansion.
1036
- static int survived_since_last_expansion_;
1037
-
1038
- static int always_allocate_scope_depth_;
1039
- static int linear_allocation_scope_depth_;
1040
-
1041
- // For keeping track of context disposals.
1042
- static int contexts_disposed_;
1043
-
1044
- #if defined(V8_TARGET_ARCH_X64)
1045
- static const int kMaxObjectSizeInNewSpace = 512*KB;
1046
- #else
1047
- static const int kMaxObjectSizeInNewSpace = 256*KB;
1048
- #endif
1049
-
1050
- static NewSpace new_space_;
1051
- static OldSpace* old_pointer_space_;
1052
- static OldSpace* old_data_space_;
1053
- static OldSpace* code_space_;
1054
- static MapSpace* map_space_;
1055
- static CellSpace* cell_space_;
1056
- static LargeObjectSpace* lo_space_;
1057
- static HeapState gc_state_;
1058
-
1059
- // Returns the size of object residing in non new spaces.
1060
- static int PromotedSpaceSize();
1061
-
1062
- // Returns the amount of external memory registered since last global gc.
1063
- static int PromotedExternalMemorySize();
1064
-
1065
- static int mc_count_; // how many mark-compact collections happened
1066
- static int ms_count_; // how many mark-sweep collections happened
1067
- static int gc_count_; // how many gc happened
1068
-
1069
- // Total length of the strings we failed to flatten since the last GC.
1070
- static int unflattened_strings_length_;
1071
-
1072
- #define ROOT_ACCESSOR(type, name, camel_name) \
1073
- static inline void set_##name(type* value) { \
1074
- roots_[k##camel_name##RootIndex] = value; \
1075
- }
1076
- ROOT_LIST(ROOT_ACCESSOR)
1077
- #undef ROOT_ACCESSOR
1078
-
1079
- #ifdef DEBUG
1080
- static bool allocation_allowed_;
1081
-
1082
- // If the --gc-interval flag is set to a positive value, this
1083
- // variable holds the value indicating the number of allocations
1084
- // remain until the next failure and garbage collection.
1085
- static int allocation_timeout_;
1086
-
1087
- // Do we expect to be able to handle allocation failure at this
1088
- // time?
1089
- static bool disallow_allocation_failure_;
1090
- #endif // DEBUG
1091
-
1092
- // Limit that triggers a global GC on the next (normally caused) GC. This
1093
- // is checked when we have already decided to do a GC to help determine
1094
- // which collector to invoke.
1095
- static int old_gen_promotion_limit_;
1096
-
1097
- // Limit that triggers a global GC as soon as is reasonable. This is
1098
- // checked before expanding a paged space in the old generation and on
1099
- // every allocation in large object space.
1100
- static int old_gen_allocation_limit_;
1101
-
1102
- // Limit on the amount of externally allocated memory allowed
1103
- // between global GCs. If reached a global GC is forced.
1104
- static int external_allocation_limit_;
1105
-
1106
- // The amount of external memory registered through the API kept alive
1107
- // by global handles
1108
- static int amount_of_external_allocated_memory_;
1109
-
1110
- // Caches the amount of external memory registered at the last global gc.
1111
- static int amount_of_external_allocated_memory_at_last_global_gc_;
1112
-
1113
- // Indicates that an allocation has failed in the old generation since the
1114
- // last GC.
1115
- static int old_gen_exhausted_;
1116
-
1117
- static Object* roots_[kRootListLength];
1118
-
1119
- struct StringTypeTable {
1120
- InstanceType type;
1121
- int size;
1122
- RootListIndex index;
1123
- };
1124
-
1125
- struct ConstantSymbolTable {
1126
- const char* contents;
1127
- RootListIndex index;
1128
- };
1129
-
1130
- struct StructTable {
1131
- InstanceType type;
1132
- int size;
1133
- RootListIndex index;
1134
- };
1135
-
1136
- static const StringTypeTable string_type_table[];
1137
- static const ConstantSymbolTable constant_symbol_table[];
1138
- static const StructTable struct_table[];
1139
-
1140
- // The special hidden symbol which is an empty string, but does not match
1141
- // any string when looked up in properties.
1142
- static String* hidden_symbol_;
1143
-
1144
- // GC callback function, called before and after mark-compact GC.
1145
- // Allocations in the callback function are disallowed.
1146
- struct GCPrologueCallbackPair {
1147
- GCPrologueCallbackPair(GCPrologueCallback callback, GCType gc_type)
1148
- : callback(callback), gc_type(gc_type) {
1149
- }
1150
- bool operator==(const GCPrologueCallbackPair& pair) const {
1151
- return pair.callback == callback;
1152
- }
1153
- GCPrologueCallback callback;
1154
- GCType gc_type;
1155
- };
1156
- static List<GCPrologueCallbackPair> gc_prologue_callbacks_;
1157
-
1158
- struct GCEpilogueCallbackPair {
1159
- GCEpilogueCallbackPair(GCEpilogueCallback callback, GCType gc_type)
1160
- : callback(callback), gc_type(gc_type) {
1161
- }
1162
- bool operator==(const GCEpilogueCallbackPair& pair) const {
1163
- return pair.callback == callback;
1164
- }
1165
- GCEpilogueCallback callback;
1166
- GCType gc_type;
1167
- };
1168
- static List<GCEpilogueCallbackPair> gc_epilogue_callbacks_;
1169
-
1170
- static GCCallback global_gc_prologue_callback_;
1171
- static GCCallback global_gc_epilogue_callback_;
1172
-
1173
- // Checks whether a global GC is necessary
1174
- static GarbageCollector SelectGarbageCollector(AllocationSpace space);
1175
-
1176
- // Performs garbage collection
1177
- static void PerformGarbageCollection(AllocationSpace space,
1178
- GarbageCollector collector,
1179
- GCTracer* tracer);
1180
-
1181
- // Allocate an uninitialized object in map space. The behavior is identical
1182
- // to Heap::AllocateRaw(size_in_bytes, MAP_SPACE), except that (a) it doesn't
1183
- // have to test the allocation space argument and (b) can reduce code size
1184
- // (since both AllocateRaw and AllocateRawMap are inlined).
1185
- static inline Object* AllocateRawMap();
1186
-
1187
- // Allocate an uninitialized object in the global property cell space.
1188
- static inline Object* AllocateRawCell();
1189
-
1190
- // Initializes a JSObject based on its map.
1191
- static void InitializeJSObjectFromMap(JSObject* obj,
1192
- FixedArray* properties,
1193
- Map* map);
1194
-
1195
- static bool CreateInitialMaps();
1196
- static bool CreateInitialObjects();
1197
-
1198
- // These four Create*EntryStub functions are here because of a gcc-4.4 bug
1199
- // that assigns wrong vtable entries.
1200
- static void CreateCEntryStub();
1201
- static void CreateJSEntryStub();
1202
- static void CreateJSConstructEntryStub();
1203
- static void CreateRegExpCEntryStub();
1204
-
1205
- static void CreateFixedStubs();
1206
-
1207
- static Object* CreateOddball(const char* to_string, Object* to_number);
1208
-
1209
- // Allocate empty fixed array.
1210
- static Object* AllocateEmptyFixedArray();
1211
-
1212
- // Performs a minor collection in new generation.
1213
- static void Scavenge();
1214
-
1215
- static String* UpdateNewSpaceReferenceInExternalStringTableEntry(
1216
- Object** pointer);
1217
-
1218
- static Address DoScavenge(ObjectVisitor* scavenge_visitor,
1219
- Address new_space_front);
1220
-
1221
- // Performs a major collection in the whole heap.
1222
- static void MarkCompact(GCTracer* tracer);
1223
-
1224
- // Code to be run before and after mark-compact.
1225
- static void MarkCompactPrologue(bool is_compacting);
1226
- static void MarkCompactEpilogue(bool is_compacting);
1227
-
1228
- // Completely clear the Instanceof cache (to stop it keeping objects alive
1229
- // around a GC).
1230
- static void CompletelyClearInstanceofCache() {
1231
- set_instanceof_cache_map(the_hole_value());
1232
- set_instanceof_cache_function(the_hole_value());
1233
- }
1234
-
1235
- #if defined(DEBUG) || defined(ENABLE_LOGGING_AND_PROFILING)
1236
- // Record statistics before and after garbage collection.
1237
- static void ReportStatisticsBeforeGC();
1238
- static void ReportStatisticsAfterGC();
1239
- #endif
1240
-
1241
- // Slow part of scavenge object.
1242
- static void ScavengeObjectSlow(HeapObject** p, HeapObject* object);
1243
-
1244
- // Initializes a function with a shared part and prototype.
1245
- // Returns the function.
1246
- // Note: this code was factored out of AllocateFunction such that
1247
- // other parts of the VM could use it. Specifically, a function that creates
1248
- // instances of type JS_FUNCTION_TYPE benefit from the use of this function.
1249
- // Please note this does not perform a garbage collection.
1250
- static inline Object* InitializeFunction(JSFunction* function,
1251
- SharedFunctionInfo* shared,
1252
- Object* prototype);
1253
-
1254
- static GCTracer* tracer_;
1255
-
1256
-
1257
- // Initializes the number to string cache based on the max semispace size.
1258
- static Object* InitializeNumberStringCache();
1259
- // Flush the number to string cache.
1260
- static void FlushNumberStringCache();
1261
-
1262
- // Flush code from functions we do not expect to use again. The code will
1263
- // be replaced with a lazy compilable version.
1264
- static void FlushCode();
1265
-
1266
- static void UpdateSurvivalRateTrend(int start_new_space_size);
1267
-
1268
- enum SurvivalRateTrend { INCREASING, STABLE, DECREASING, FLUCTUATING };
1269
-
1270
- static const int kYoungSurvivalRateThreshold = 90;
1271
- static const int kYoungSurvivalRateAllowedDeviation = 15;
1272
-
1273
- static int young_survivors_after_last_gc_;
1274
- static int high_survival_rate_period_length_;
1275
- static double survival_rate_;
1276
- static SurvivalRateTrend previous_survival_rate_trend_;
1277
- static SurvivalRateTrend survival_rate_trend_;
1278
-
1279
- static void set_survival_rate_trend(SurvivalRateTrend survival_rate_trend) {
1280
- ASSERT(survival_rate_trend != FLUCTUATING);
1281
- previous_survival_rate_trend_ = survival_rate_trend_;
1282
- survival_rate_trend_ = survival_rate_trend;
1283
- }
1284
-
1285
- static SurvivalRateTrend survival_rate_trend() {
1286
- if (survival_rate_trend_ == STABLE) {
1287
- return STABLE;
1288
- } else if (previous_survival_rate_trend_ == STABLE) {
1289
- return survival_rate_trend_;
1290
- } else if (survival_rate_trend_ != previous_survival_rate_trend_) {
1291
- return FLUCTUATING;
1292
- } else {
1293
- return survival_rate_trend_;
1294
- }
1295
- }
1296
-
1297
- static bool IsStableOrIncreasingSurvivalTrend() {
1298
- switch (survival_rate_trend()) {
1299
- case STABLE:
1300
- case INCREASING:
1301
- return true;
1302
- default:
1303
- return false;
1304
- }
1305
- }
1306
-
1307
- static bool IsIncreasingSurvivalTrend() {
1308
- return survival_rate_trend() == INCREASING;
1309
- }
1310
-
1311
- static bool IsHighSurvivalRate() {
1312
- return high_survival_rate_period_length_ > 0;
1313
- }
1314
-
1315
- static const int kInitialSymbolTableSize = 2048;
1316
- static const int kInitialEvalCacheSize = 64;
1317
-
1318
- friend class Factory;
1319
- friend class DisallowAllocationFailure;
1320
- friend class AlwaysAllocateScope;
1321
- friend class LinearAllocationScope;
1322
- };
1323
-
1324
-
1325
- class HeapStats {
1326
- public:
1327
- int* start_marker;
1328
- int* new_space_size;
1329
- int* new_space_capacity;
1330
- int* old_pointer_space_size;
1331
- int* old_pointer_space_capacity;
1332
- int* old_data_space_size;
1333
- int* old_data_space_capacity;
1334
- int* code_space_size;
1335
- int* code_space_capacity;
1336
- int* map_space_size;
1337
- int* map_space_capacity;
1338
- int* cell_space_size;
1339
- int* cell_space_capacity;
1340
- int* lo_space_size;
1341
- int* global_handle_count;
1342
- int* weak_global_handle_count;
1343
- int* pending_global_handle_count;
1344
- int* near_death_global_handle_count;
1345
- int* destroyed_global_handle_count;
1346
- int* end_marker;
1347
- };
1348
-
1349
-
1350
- class AlwaysAllocateScope {
1351
- public:
1352
- AlwaysAllocateScope() {
1353
- // We shouldn't hit any nested scopes, because that requires
1354
- // non-handle code to call handle code. The code still works but
1355
- // performance will degrade, so we want to catch this situation
1356
- // in debug mode.
1357
- ASSERT(Heap::always_allocate_scope_depth_ == 0);
1358
- Heap::always_allocate_scope_depth_++;
1359
- }
1360
-
1361
- ~AlwaysAllocateScope() {
1362
- Heap::always_allocate_scope_depth_--;
1363
- ASSERT(Heap::always_allocate_scope_depth_ == 0);
1364
- }
1365
- };
1366
-
1367
-
1368
- class LinearAllocationScope {
1369
- public:
1370
- LinearAllocationScope() {
1371
- Heap::linear_allocation_scope_depth_++;
1372
- }
1373
-
1374
- ~LinearAllocationScope() {
1375
- Heap::linear_allocation_scope_depth_--;
1376
- ASSERT(Heap::linear_allocation_scope_depth_ >= 0);
1377
- }
1378
- };
1379
-
1380
-
1381
- #ifdef DEBUG
1382
- // Visitor class to verify interior pointers in spaces that do not contain
1383
- // or care about intergenerational references. All heap object pointers have to
1384
- // point into the heap to a location that has a map pointer at its first word.
1385
- // Caveat: Heap::Contains is an approximation because it can return true for
1386
- // objects in a heap space but above the allocation pointer.
1387
- class VerifyPointersVisitor: public ObjectVisitor {
1388
- public:
1389
- void VisitPointers(Object** start, Object** end) {
1390
- for (Object** current = start; current < end; current++) {
1391
- if ((*current)->IsHeapObject()) {
1392
- HeapObject* object = HeapObject::cast(*current);
1393
- ASSERT(Heap::Contains(object));
1394
- ASSERT(object->map()->IsMap());
1395
- }
1396
- }
1397
- }
1398
- };
1399
-
1400
-
1401
- // Visitor class to verify interior pointers in spaces that use region marks
1402
- // to keep track of intergenerational references.
1403
- // As VerifyPointersVisitor but also checks that dirty marks are set
1404
- // for regions covering intergenerational references.
1405
- class VerifyPointersAndDirtyRegionsVisitor: public ObjectVisitor {
1406
- public:
1407
- void VisitPointers(Object** start, Object** end) {
1408
- for (Object** current = start; current < end; current++) {
1409
- if ((*current)->IsHeapObject()) {
1410
- HeapObject* object = HeapObject::cast(*current);
1411
- ASSERT(Heap::Contains(object));
1412
- ASSERT(object->map()->IsMap());
1413
- if (Heap::InNewSpace(object)) {
1414
- ASSERT(Heap::InToSpace(object));
1415
- Address addr = reinterpret_cast<Address>(current);
1416
- ASSERT(Page::FromAddress(addr)->IsRegionDirty(addr));
1417
- }
1418
- }
1419
- }
1420
- }
1421
- };
1422
- #endif
1423
-
1424
-
1425
- // Space iterator for iterating over all spaces of the heap.
1426
- // Returns each space in turn, and null when it is done.
1427
- class AllSpaces BASE_EMBEDDED {
1428
- public:
1429
- Space* next();
1430
- AllSpaces() { counter_ = FIRST_SPACE; }
1431
- private:
1432
- int counter_;
1433
- };
1434
-
1435
-
1436
- // Space iterator for iterating over all old spaces of the heap: Old pointer
1437
- // space, old data space and code space.
1438
- // Returns each space in turn, and null when it is done.
1439
- class OldSpaces BASE_EMBEDDED {
1440
- public:
1441
- OldSpace* next();
1442
- OldSpaces() { counter_ = OLD_POINTER_SPACE; }
1443
- private:
1444
- int counter_;
1445
- };
1446
-
1447
-
1448
- // Space iterator for iterating over all the paged spaces of the heap:
1449
- // Map space, old pointer space, old data space, code space and cell space.
1450
- // Returns each space in turn, and null when it is done.
1451
- class PagedSpaces BASE_EMBEDDED {
1452
- public:
1453
- PagedSpace* next();
1454
- PagedSpaces() { counter_ = OLD_POINTER_SPACE; }
1455
- private:
1456
- int counter_;
1457
- };
1458
-
1459
-
1460
- // Space iterator for iterating over all spaces of the heap.
1461
- // For each space an object iterator is provided. The deallocation of the
1462
- // returned object iterators is handled by the space iterator.
1463
- class SpaceIterator : public Malloced {
1464
- public:
1465
- SpaceIterator();
1466
- virtual ~SpaceIterator();
1467
-
1468
- bool has_next();
1469
- ObjectIterator* next();
1470
-
1471
- private:
1472
- ObjectIterator* CreateIterator();
1473
-
1474
- int current_space_; // from enum AllocationSpace.
1475
- ObjectIterator* iterator_; // object iterator for the current space.
1476
- };
1477
-
1478
-
1479
- // A HeapIterator provides iteration over the whole heap It aggregates a the
1480
- // specific iterators for the different spaces as these can only iterate over
1481
- // one space only.
1482
-
1483
- class HeapIterator BASE_EMBEDDED {
1484
- public:
1485
- explicit HeapIterator();
1486
- virtual ~HeapIterator();
1487
-
1488
- HeapObject* next();
1489
- void reset();
1490
-
1491
- private:
1492
- // Perform the initialization.
1493
- void Init();
1494
-
1495
- // Perform all necessary shutdown (destruction) work.
1496
- void Shutdown();
1497
-
1498
- // Space iterator for iterating all the spaces.
1499
- SpaceIterator* space_iterator_;
1500
- // Object iterator for the space currently being iterated.
1501
- ObjectIterator* object_iterator_;
1502
- };
1503
-
1504
-
1505
- // Cache for mapping (map, property name) into field offset.
1506
- // Cleared at startup and prior to mark sweep collection.
1507
- class KeyedLookupCache {
1508
- public:
1509
- // Lookup field offset for (map, name). If absent, -1 is returned.
1510
- static int Lookup(Map* map, String* name);
1511
-
1512
- // Update an element in the cache.
1513
- static void Update(Map* map, String* name, int field_offset);
1514
-
1515
- // Clear the cache.
1516
- static void Clear();
1517
-
1518
- static const int kLength = 64;
1519
- static const int kCapacityMask = kLength - 1;
1520
- static const int kMapHashShift = 2;
1521
-
1522
- private:
1523
- static inline int Hash(Map* map, String* name);
1524
-
1525
- // Get the address of the keys and field_offsets arrays. Used in
1526
- // generated code to perform cache lookups.
1527
- static Address keys_address() {
1528
- return reinterpret_cast<Address>(&keys_);
1529
- }
1530
-
1531
- static Address field_offsets_address() {
1532
- return reinterpret_cast<Address>(&field_offsets_);
1533
- }
1534
-
1535
- struct Key {
1536
- Map* map;
1537
- String* name;
1538
- };
1539
- static Key keys_[kLength];
1540
- static int field_offsets_[kLength];
1541
-
1542
- friend class ExternalReference;
1543
- };
1544
-
1545
-
1546
- // Cache for mapping (array, property name) into descriptor index.
1547
- // The cache contains both positive and negative results.
1548
- // Descriptor index equals kNotFound means the property is absent.
1549
- // Cleared at startup and prior to any gc.
1550
- class DescriptorLookupCache {
1551
- public:
1552
- // Lookup descriptor index for (map, name).
1553
- // If absent, kAbsent is returned.
1554
- static int Lookup(DescriptorArray* array, String* name) {
1555
- if (!StringShape(name).IsSymbol()) return kAbsent;
1556
- int index = Hash(array, name);
1557
- Key& key = keys_[index];
1558
- if ((key.array == array) && (key.name == name)) return results_[index];
1559
- return kAbsent;
1560
- }
1561
-
1562
- // Update an element in the cache.
1563
- static void Update(DescriptorArray* array, String* name, int result) {
1564
- ASSERT(result != kAbsent);
1565
- if (StringShape(name).IsSymbol()) {
1566
- int index = Hash(array, name);
1567
- Key& key = keys_[index];
1568
- key.array = array;
1569
- key.name = name;
1570
- results_[index] = result;
1571
- }
1572
- }
1573
-
1574
- // Clear the cache.
1575
- static void Clear();
1576
-
1577
- static const int kAbsent = -2;
1578
- private:
1579
- static int Hash(DescriptorArray* array, String* name) {
1580
- // Uses only lower 32 bits if pointers are larger.
1581
- uint32_t array_hash =
1582
- static_cast<uint32_t>(reinterpret_cast<uintptr_t>(array)) >> 2;
1583
- uint32_t name_hash =
1584
- static_cast<uint32_t>(reinterpret_cast<uintptr_t>(name)) >> 2;
1585
- return (array_hash ^ name_hash) % kLength;
1586
- }
1587
-
1588
- static const int kLength = 64;
1589
- struct Key {
1590
- DescriptorArray* array;
1591
- String* name;
1592
- };
1593
-
1594
- static Key keys_[kLength];
1595
- static int results_[kLength];
1596
- };
1597
-
1598
-
1599
- // ----------------------------------------------------------------------------
1600
- // Marking stack for tracing live objects.
1601
-
1602
- class MarkingStack {
1603
- public:
1604
- void Initialize(Address low, Address high) {
1605
- top_ = low_ = reinterpret_cast<HeapObject**>(low);
1606
- high_ = reinterpret_cast<HeapObject**>(high);
1607
- overflowed_ = false;
1608
- }
1609
-
1610
- bool is_full() { return top_ >= high_; }
1611
-
1612
- bool is_empty() { return top_ <= low_; }
1613
-
1614
- bool overflowed() { return overflowed_; }
1615
-
1616
- void clear_overflowed() { overflowed_ = false; }
1617
-
1618
- // Push the (marked) object on the marking stack if there is room,
1619
- // otherwise mark the object as overflowed and wait for a rescan of the
1620
- // heap.
1621
- void Push(HeapObject* object) {
1622
- CHECK(object->IsHeapObject());
1623
- if (is_full()) {
1624
- object->SetOverflow();
1625
- overflowed_ = true;
1626
- } else {
1627
- *(top_++) = object;
1628
- }
1629
- }
1630
-
1631
- HeapObject* Pop() {
1632
- ASSERT(!is_empty());
1633
- HeapObject* object = *(--top_);
1634
- CHECK(object->IsHeapObject());
1635
- return object;
1636
- }
1637
-
1638
- private:
1639
- HeapObject** low_;
1640
- HeapObject** top_;
1641
- HeapObject** high_;
1642
- bool overflowed_;
1643
- };
1644
-
1645
-
1646
- // A helper class to document/test C++ scopes where we do not
1647
- // expect a GC. Usage:
1648
- //
1649
- // /* Allocation not allowed: we cannot handle a GC in this scope. */
1650
- // { AssertNoAllocation nogc;
1651
- // ...
1652
- // }
1653
-
1654
- #ifdef DEBUG
1655
-
1656
- class DisallowAllocationFailure {
1657
- public:
1658
- DisallowAllocationFailure() {
1659
- old_state_ = Heap::disallow_allocation_failure_;
1660
- Heap::disallow_allocation_failure_ = true;
1661
- }
1662
- ~DisallowAllocationFailure() {
1663
- Heap::disallow_allocation_failure_ = old_state_;
1664
- }
1665
- private:
1666
- bool old_state_;
1667
- };
1668
-
1669
- class AssertNoAllocation {
1670
- public:
1671
- AssertNoAllocation() {
1672
- old_state_ = Heap::allow_allocation(false);
1673
- }
1674
-
1675
- ~AssertNoAllocation() {
1676
- Heap::allow_allocation(old_state_);
1677
- }
1678
-
1679
- private:
1680
- bool old_state_;
1681
- };
1682
-
1683
- class DisableAssertNoAllocation {
1684
- public:
1685
- DisableAssertNoAllocation() {
1686
- old_state_ = Heap::allow_allocation(true);
1687
- }
1688
-
1689
- ~DisableAssertNoAllocation() {
1690
- Heap::allow_allocation(old_state_);
1691
- }
1692
-
1693
- private:
1694
- bool old_state_;
1695
- };
1696
-
1697
- #else // ndef DEBUG
1698
-
1699
- class AssertNoAllocation {
1700
- public:
1701
- AssertNoAllocation() { }
1702
- ~AssertNoAllocation() { }
1703
- };
1704
-
1705
- class DisableAssertNoAllocation {
1706
- public:
1707
- DisableAssertNoAllocation() { }
1708
- ~DisableAssertNoAllocation() { }
1709
- };
1710
-
1711
- #endif
1712
-
1713
- // GCTracer collects and prints ONE line after each garbage collector
1714
- // invocation IFF --trace_gc is used.
1715
-
1716
- class GCTracer BASE_EMBEDDED {
1717
- public:
1718
- class Scope BASE_EMBEDDED {
1719
- public:
1720
- enum ScopeId {
1721
- EXTERNAL,
1722
- MC_MARK,
1723
- MC_SWEEP,
1724
- MC_COMPACT,
1725
- MC_FLUSH_CODE,
1726
- kNumberOfScopes
1727
- };
1728
-
1729
- Scope(GCTracer* tracer, ScopeId scope)
1730
- : tracer_(tracer),
1731
- scope_(scope) {
1732
- start_time_ = OS::TimeCurrentMillis();
1733
- }
1734
-
1735
- ~Scope() {
1736
- ASSERT((0 <= scope_) && (scope_ < kNumberOfScopes));
1737
- tracer_->scopes_[scope_] += OS::TimeCurrentMillis() - start_time_;
1738
- }
1739
-
1740
- private:
1741
- GCTracer* tracer_;
1742
- ScopeId scope_;
1743
- double start_time_;
1744
- };
1745
-
1746
- GCTracer();
1747
- ~GCTracer();
1748
-
1749
- // Sets the collector.
1750
- void set_collector(GarbageCollector collector) { collector_ = collector; }
1751
-
1752
- // Sets the GC count.
1753
- void set_gc_count(int count) { gc_count_ = count; }
1754
-
1755
- // Sets the full GC count.
1756
- void set_full_gc_count(int count) { full_gc_count_ = count; }
1757
-
1758
- // Sets the flag that this is a compacting full GC.
1759
- void set_is_compacting() { is_compacting_ = true; }
1760
- bool is_compacting() const { return is_compacting_; }
1761
-
1762
- // Increment and decrement the count of marked objects.
1763
- void increment_marked_count() { ++marked_count_; }
1764
- void decrement_marked_count() { --marked_count_; }
1765
-
1766
- int marked_count() { return marked_count_; }
1767
-
1768
- void increment_promoted_objects_size(int object_size) {
1769
- promoted_objects_size_ += object_size;
1770
- }
1771
-
1772
- // Returns maximum GC pause.
1773
- static int get_max_gc_pause() { return max_gc_pause_; }
1774
-
1775
- // Returns maximum size of objects alive after GC.
1776
- static int get_max_alive_after_gc() { return max_alive_after_gc_; }
1777
-
1778
- // Returns minimal interval between two subsequent collections.
1779
- static int get_min_in_mutator() { return min_in_mutator_; }
1780
-
1781
- private:
1782
- // Returns a string matching the collector.
1783
- const char* CollectorString();
1784
-
1785
- // Returns size of object in heap (in MB).
1786
- double SizeOfHeapObjects() {
1787
- return (static_cast<double>(Heap::SizeOfObjects())) / MB;
1788
- }
1789
-
1790
- double start_time_; // Timestamp set in the constructor.
1791
- int start_size_; // Size of objects in heap set in constructor.
1792
- GarbageCollector collector_; // Type of collector.
1793
-
1794
- // A count (including this one, eg, the first collection is 1) of the
1795
- // number of garbage collections.
1796
- int gc_count_;
1797
-
1798
- // A count (including this one) of the number of full garbage collections.
1799
- int full_gc_count_;
1800
-
1801
- // True if the current GC is a compacting full collection, false
1802
- // otherwise.
1803
- bool is_compacting_;
1804
-
1805
- // True if the *previous* full GC cwas a compacting collection (will be
1806
- // false if there has not been a previous full GC).
1807
- bool previous_has_compacted_;
1808
-
1809
- // On a full GC, a count of the number of marked objects. Incremented
1810
- // when an object is marked and decremented when an object's mark bit is
1811
- // cleared. Will be zero on a scavenge collection.
1812
- int marked_count_;
1813
-
1814
- // The count from the end of the previous full GC. Will be zero if there
1815
- // was no previous full GC.
1816
- int previous_marked_count_;
1817
-
1818
- // Amounts of time spent in different scopes during GC.
1819
- double scopes_[Scope::kNumberOfScopes];
1820
-
1821
- // Total amount of space either wasted or contained in one of free lists
1822
- // before the current GC.
1823
- int in_free_list_or_wasted_before_gc_;
1824
-
1825
- // Difference between space used in the heap at the beginning of the current
1826
- // collection and the end of the previous collection.
1827
- int allocated_since_last_gc_;
1828
-
1829
- // Amount of time spent in mutator that is time elapsed between end of the
1830
- // previous collection and the beginning of the current one.
1831
- double spent_in_mutator_;
1832
-
1833
- // Size of objects promoted during the current collection.
1834
- int promoted_objects_size_;
1835
-
1836
- // Maximum GC pause.
1837
- static int max_gc_pause_;
1838
-
1839
- // Maximum size of objects alive after GC.
1840
- static int max_alive_after_gc_;
1841
-
1842
- // Minimal interval between two subsequent collections.
1843
- static int min_in_mutator_;
1844
-
1845
- // Size of objects alive after last GC.
1846
- static int alive_after_last_gc_;
1847
-
1848
- static double last_gc_end_timestamp_;
1849
- };
1850
-
1851
-
1852
- class TranscendentalCache {
1853
- public:
1854
- enum Type {ACOS, ASIN, ATAN, COS, EXP, LOG, SIN, TAN, kNumberOfCaches};
1855
-
1856
- explicit TranscendentalCache(Type t);
1857
-
1858
- // Returns a heap number with f(input), where f is a math function specified
1859
- // by the 'type' argument.
1860
- static inline Object* Get(Type type, double input) {
1861
- TranscendentalCache* cache = caches_[type];
1862
- if (cache == NULL) {
1863
- caches_[type] = cache = new TranscendentalCache(type);
1864
- }
1865
- return cache->Get(input);
1866
- }
1867
-
1868
- // The cache contains raw Object pointers. This method disposes of
1869
- // them before a garbage collection.
1870
- static void Clear();
1871
-
1872
- private:
1873
- inline Object* Get(double input) {
1874
- Converter c;
1875
- c.dbl = input;
1876
- int hash = Hash(c);
1877
- Element e = elements_[hash];
1878
- if (e.in[0] == c.integers[0] &&
1879
- e.in[1] == c.integers[1]) {
1880
- ASSERT(e.output != NULL);
1881
- Counters::transcendental_cache_hit.Increment();
1882
- return e.output;
1883
- }
1884
- double answer = Calculate(input);
1885
- Object* heap_number = Heap::AllocateHeapNumber(answer);
1886
- if (!heap_number->IsFailure()) {
1887
- elements_[hash].in[0] = c.integers[0];
1888
- elements_[hash].in[1] = c.integers[1];
1889
- elements_[hash].output = heap_number;
1890
- }
1891
- Counters::transcendental_cache_miss.Increment();
1892
- return heap_number;
1893
- }
1894
-
1895
- inline double Calculate(double input) {
1896
- switch (type_) {
1897
- case ACOS:
1898
- return acos(input);
1899
- case ASIN:
1900
- return asin(input);
1901
- case ATAN:
1902
- return atan(input);
1903
- case COS:
1904
- return cos(input);
1905
- case EXP:
1906
- return exp(input);
1907
- case LOG:
1908
- return log(input);
1909
- case SIN:
1910
- return sin(input);
1911
- case TAN:
1912
- return tan(input);
1913
- default:
1914
- return 0.0; // Never happens.
1915
- }
1916
- }
1917
- static const int kCacheSize = 512;
1918
- struct Element {
1919
- uint32_t in[2];
1920
- Object* output;
1921
- };
1922
- union Converter {
1923
- double dbl;
1924
- uint32_t integers[2];
1925
- };
1926
- inline static int Hash(const Converter& c) {
1927
- uint32_t hash = (c.integers[0] ^ c.integers[1]);
1928
- hash ^= static_cast<int32_t>(hash) >> 16;
1929
- hash ^= static_cast<int32_t>(hash) >> 8;
1930
- return (hash & (kCacheSize - 1));
1931
- }
1932
-
1933
- static Address cache_array_address() {
1934
- // Used to create an external reference.
1935
- return reinterpret_cast<Address>(caches_);
1936
- }
1937
-
1938
- // Allow access to the caches_ array as an ExternalReference.
1939
- friend class ExternalReference;
1940
- // Inline implementation of the caching.
1941
- friend class TranscendentalCacheStub;
1942
-
1943
- static TranscendentalCache* caches_[kNumberOfCaches];
1944
- Element elements_[kCacheSize];
1945
- Type type_;
1946
- };
1947
-
1948
-
1949
- // External strings table is a place where all external strings are
1950
- // registered. We need to keep track of such strings to properly
1951
- // finalize them.
1952
- class ExternalStringTable : public AllStatic {
1953
- public:
1954
- // Registers an external string.
1955
- inline static void AddString(String* string);
1956
-
1957
- inline static void Iterate(ObjectVisitor* v);
1958
-
1959
- // Restores internal invariant and gets rid of collected strings.
1960
- // Must be called after each Iterate() that modified the strings.
1961
- static void CleanUp();
1962
-
1963
- // Destroys all allocated memory.
1964
- static void TearDown();
1965
-
1966
- private:
1967
- friend class Heap;
1968
-
1969
- inline static void Verify();
1970
-
1971
- inline static void AddOldString(String* string);
1972
-
1973
- // Notifies the table that only a prefix of the new list is valid.
1974
- inline static void ShrinkNewStrings(int position);
1975
-
1976
- // To speed up scavenge collections new space string are kept
1977
- // separate from old space strings.
1978
- static List<Object*> new_space_strings_;
1979
- static List<Object*> old_space_strings_;
1980
- };
1981
-
1982
- } } // namespace v8::internal
1983
-
1984
- #endif // V8_HEAP_H_