libv8 6.3.292.48.1 → 6.7.288.46.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (195) hide show
  1. checksums.yaml +5 -5
  2. data/.travis.yml +10 -34
  3. data/CHANGELOG.md +16 -0
  4. data/README.md +9 -63
  5. data/Rakefile +2 -2
  6. data/ext/libv8/builder.rb +22 -87
  7. data/ext/libv8/extconf.rb +1 -1
  8. data/ext/libv8/paths.rb +5 -18
  9. data/lib/libv8/version.rb +1 -1
  10. data/spec/location_spec.rb +1 -2
  11. data/spec/spec_helper.rb +0 -1
  12. data/vendor/depot_tools/.gitattributes +1 -2
  13. data/vendor/depot_tools/OWNERS +0 -1
  14. data/vendor/depot_tools/PRESUBMIT.py +11 -6
  15. data/vendor/depot_tools/README.md +0 -1
  16. data/vendor/depot_tools/WATCHLISTS +0 -6
  17. data/vendor/depot_tools/auth.py +129 -87
  18. data/vendor/depot_tools/autoninja +11 -1
  19. data/vendor/depot_tools/autoninja.bat +7 -1
  20. data/vendor/depot_tools/autoninja.py +14 -6
  21. data/vendor/depot_tools/bootstrap/win/manifest.txt +1 -1
  22. data/vendor/depot_tools/bootstrap/win/manifest_bleeding_edge.txt +1 -1
  23. data/vendor/depot_tools/cipd +23 -2
  24. data/vendor/depot_tools/cipd.bat +2 -2
  25. data/vendor/depot_tools/cipd_client_version +1 -1
  26. data/vendor/depot_tools/cipd_manifest.txt +17 -7
  27. data/vendor/depot_tools/cit.py +7 -6
  28. data/vendor/depot_tools/cpplint.py +195 -35
  29. data/vendor/depot_tools/detect_host_arch.py +51 -0
  30. data/vendor/depot_tools/download_from_google_storage.py +85 -26
  31. data/vendor/depot_tools/fetch.py +11 -6
  32. data/vendor/depot_tools/fetch_configs/chromium.py +0 -1
  33. data/vendor/depot_tools/fetch_configs/goma_client.py +41 -0
  34. data/vendor/depot_tools/fetch_configs/infra.py +0 -1
  35. data/vendor/depot_tools/fetch_configs/infra_internal.py +0 -1
  36. data/vendor/depot_tools/gclient-new-workdir.py +4 -0
  37. data/vendor/depot_tools/gclient.py +732 -476
  38. data/vendor/depot_tools/gclient_eval.py +569 -58
  39. data/vendor/depot_tools/gclient_scm.py +258 -46
  40. data/vendor/depot_tools/gclient_utils.py +17 -1
  41. data/vendor/depot_tools/gerrit_util.py +46 -13
  42. data/vendor/depot_tools/git_cache.py +0 -2
  43. data/vendor/depot_tools/git_cl.py +176 -335
  44. data/vendor/depot_tools/git_common.py +19 -16
  45. data/vendor/depot_tools/git_footers.py +19 -5
  46. data/vendor/depot_tools/git_hyper_blame.py +9 -3
  47. data/vendor/depot_tools/git_new_branch.py +15 -3
  48. data/vendor/depot_tools/git_upstream_diff.py +7 -2
  49. data/vendor/depot_tools/gsutil.py +1 -1
  50. data/vendor/depot_tools/infra/config/cq.cfg +1 -2
  51. data/vendor/depot_tools/infra/config/recipes.cfg +1 -1
  52. data/vendor/depot_tools/luci-auth +13 -0
  53. data/vendor/depot_tools/luci-auth.bat +8 -0
  54. data/vendor/depot_tools/man/html/depot_tools.html +0 -8
  55. data/vendor/depot_tools/man/html/git-upstream-diff.html +20 -3
  56. data/vendor/depot_tools/man/man1/git-upstream-diff.1 +27 -6
  57. data/vendor/depot_tools/man/man7/depot_tools.7 +0 -5
  58. data/vendor/depot_tools/man/man7/depot_tools_tutorial.7 +2 -2
  59. data/vendor/depot_tools/man/src/git-upstream-diff.txt +21 -3
  60. data/vendor/depot_tools/man/src/make_docs.sh +6 -0
  61. data/vendor/depot_tools/my_activity.py +283 -93
  62. data/vendor/depot_tools/owners.py +9 -4
  63. data/vendor/depot_tools/owners_finder.py +7 -3
  64. data/vendor/depot_tools/post_build_ninja_summary.py +322 -0
  65. data/vendor/depot_tools/presubmit_canned_checks.py +91 -106
  66. data/vendor/depot_tools/presubmit_support.py +219 -157
  67. data/vendor/depot_tools/prpc +13 -0
  68. data/vendor/depot_tools/prpc.bat +8 -0
  69. data/vendor/depot_tools/recipes/OWNERS +3 -1
  70. data/vendor/depot_tools/recipes/README.recipes.md +70 -111
  71. data/vendor/depot_tools/recipes/recipe_modules/bot_update/__init__.py +12 -5
  72. data/vendor/depot_tools/recipes/recipe_modules/bot_update/api.py +36 -68
  73. data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/deprecated_got_revision_mapping.json +0 -8
  74. data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/{trychange_oauth2_json.json → no_apply_patch_on_gclient.json} +64 -10
  75. data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/{no_shallow.json → shallow.json} +1 -1
  76. data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/tryjob.json +0 -8
  77. data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/tryjob_empty_revision.json +0 -8
  78. data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/tryjob_fail.json +0 -6
  79. data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/tryjob_fail_patch.json +0 -7
  80. data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/tryjob_fail_patch_download.json +0 -6
  81. data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/tryjob_gerrit_angle_deprecated.json +44 -0
  82. data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/{trychange_oauth2_buildbot.json → tryjob_gerrit_branch_heads.json} +51 -5
  83. data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/tryjob_v8.json +0 -8
  84. data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/tryjob_v8_head_by_default.json +48 -8
  85. data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.py +19 -26
  86. data/vendor/depot_tools/recipes/recipe_modules/bot_update/resources/bot_update.py +193 -155
  87. data/vendor/depot_tools/recipes/recipe_modules/bot_update/test_api.py +9 -0
  88. data/vendor/depot_tools/recipes/recipe_modules/gclient/api.py +2 -7
  89. data/vendor/depot_tools/recipes/recipe_modules/gclient/config.py +31 -5
  90. data/vendor/depot_tools/recipes/recipe_modules/gclient/examples/full.expected/basic.json +37 -19
  91. data/vendor/depot_tools/recipes/recipe_modules/gclient/examples/full.expected/buildbot.json +37 -19
  92. data/vendor/depot_tools/recipes/recipe_modules/gclient/examples/full.expected/revision.json +37 -19
  93. data/vendor/depot_tools/recipes/recipe_modules/gclient/examples/full.expected/tryserver.json +37 -23
  94. data/vendor/depot_tools/recipes/recipe_modules/gclient/examples/full.py +4 -0
  95. data/vendor/depot_tools/recipes/recipe_modules/gerrit/api.py +40 -8
  96. data/vendor/depot_tools/recipes/recipe_modules/gerrit/examples/full.expected/basic.json +3 -3
  97. data/vendor/depot_tools/recipes/recipe_modules/gerrit/examples/full.py +6 -3
  98. data/vendor/depot_tools/recipes/recipe_modules/gitiles/OWNERS +0 -1
  99. data/vendor/depot_tools/recipes/recipe_modules/tryserver/__init__.py +0 -1
  100. data/vendor/depot_tools/recipes/recipe_modules/tryserver/api.py +7 -56
  101. data/vendor/depot_tools/recipes/recipe_modules/tryserver/examples/full.expected/with_wrong_patch.json +0 -1
  102. data/vendor/depot_tools/recipes/recipe_modules/tryserver/examples/full.py +15 -16
  103. data/vendor/depot_tools/recipes/recipes.py +4 -2
  104. data/vendor/depot_tools/recipes/trigger_recipe_roller.txt +12 -0
  105. data/vendor/depot_tools/roll_dep.py +35 -37
  106. data/vendor/depot_tools/support/chromite_wrapper +1 -1
  107. data/vendor/depot_tools/third_party/logilab/astroid/README.chromium +3 -3
  108. data/vendor/depot_tools/third_party/logilab/astroid/__pkginfo__.py +2 -2
  109. data/vendor/depot_tools/third_party/logilab/astroid/astpeephole.py +86 -0
  110. data/vendor/depot_tools/third_party/logilab/astroid/bases.py +53 -66
  111. data/vendor/depot_tools/third_party/logilab/astroid/brain/py2pytest.py +31 -31
  112. data/vendor/depot_tools/third_party/logilab/astroid/brain/pynose.py +39 -16
  113. data/vendor/depot_tools/third_party/logilab/astroid/brain/pysix_moves.py +225 -189
  114. data/vendor/depot_tools/third_party/logilab/astroid/inference.py +45 -41
  115. data/vendor/depot_tools/third_party/logilab/astroid/manager.py +1 -0
  116. data/vendor/depot_tools/third_party/logilab/astroid/modutils.py +2 -2
  117. data/vendor/depot_tools/third_party/logilab/astroid/node_classes.py +3 -2
  118. data/vendor/depot_tools/third_party/logilab/astroid/nodes.py +1 -0
  119. data/vendor/depot_tools/third_party/logilab/astroid/protocols.py +57 -3
  120. data/vendor/depot_tools/third_party/logilab/astroid/raw_building.py +1 -1
  121. data/vendor/depot_tools/third_party/logilab/astroid/rebuilder.py +21 -1
  122. data/vendor/depot_tools/third_party/logilab/astroid/scoped_nodes.py +58 -33
  123. data/vendor/depot_tools/third_party/pylint/README.chromium +2 -2
  124. data/vendor/depot_tools/third_party/pylint/__pkginfo__.py +3 -3
  125. data/vendor/depot_tools/third_party/pylint/checkers/base.py +6 -18
  126. data/vendor/depot_tools/third_party/pylint/checkers/classes.py +64 -63
  127. data/vendor/depot_tools/third_party/pylint/checkers/design_analysis.py +25 -57
  128. data/vendor/depot_tools/third_party/pylint/checkers/format.py +14 -10
  129. data/vendor/depot_tools/third_party/pylint/checkers/python3.py +142 -37
  130. data/vendor/depot_tools/third_party/pylint/checkers/spelling.py +10 -1
  131. data/vendor/depot_tools/third_party/pylint/checkers/stdlib.py +50 -7
  132. data/vendor/depot_tools/third_party/pylint/checkers/strings.py +1 -1
  133. data/vendor/depot_tools/third_party/pylint/epylint.py +2 -1
  134. data/vendor/depot_tools/third_party/pylint/gui.py +1 -1
  135. data/vendor/depot_tools/third_party/pylint/lint.py +88 -23
  136. data/vendor/depot_tools/third_party/pylint/reporters/html.py +37 -5
  137. data/vendor/depot_tools/third_party/pylint/testutils.py +1 -1
  138. data/vendor/depot_tools/third_party/pylint/utils.py +5 -0
  139. data/vendor/depot_tools/vpython +31 -1
  140. data/vendor/depot_tools/win_toolchain/get_toolchain_if_necessary.py +35 -2
  141. data/vendor/depot_tools/win_toolchain/package_from_installed.py +0 -15
  142. data/vendor/depot_tools/yapf +17 -0
  143. data/vendor/depot_tools/{apply_issue.bat → yapf.bat} +2 -2
  144. metadata +16 -58
  145. data/ext/libv8/compiler.rb +0 -39
  146. data/ext/libv8/compiler/apple_llvm.rb +0 -22
  147. data/ext/libv8/compiler/clang.rb +0 -22
  148. data/ext/libv8/compiler/gcc.rb +0 -22
  149. data/ext/libv8/compiler/generic_compiler.rb +0 -66
  150. data/ext/libv8/make.rb +0 -13
  151. data/ext/libv8/patcher.rb +0 -21
  152. data/patches/0001-Build-a-standalone-static-library.patch +0 -26
  153. data/patches/0002-Don-t-compile-unnecessary-stuff.patch +0 -85
  154. data/patches/0003-Use-the-fPIC-flag-for-the-static-library.patch +0 -25
  155. data/patches/0004-Do-not-embed-debug-symbols-in-macOS-libraries.patch +0 -25
  156. data/patches/0005-Remove-TryInstallOptimizedCode.patch +0 -321
  157. data/patches/mingw-generate-makefiles.sh +0 -97
  158. data/spec/compiler/apple_llvm_spec.rb +0 -37
  159. data/spec/compiler/clang_spec.rb +0 -37
  160. data/spec/compiler/gcc_spec.rb +0 -37
  161. data/spec/compiler/generic_compiler_spec.rb +0 -50
  162. data/spec/compiler_spec.rb +0 -45
  163. data/spec/support/compiler_helpers.rb +0 -47
  164. data/vendor/depot_tools/apply_issue +0 -8
  165. data/vendor/depot_tools/apply_issue.py +0 -315
  166. data/vendor/depot_tools/man/html/git-cherry-pick-upload.html +0 -815
  167. data/vendor/depot_tools/man/man1/git-cherry-pick-upload.1 +0 -80
  168. data/vendor/depot_tools/man/src/_git-cherry-pick-upload_desc.helper.txt +0 -1
  169. data/vendor/depot_tools/man/src/git-cherry-pick-upload.demo.1.sh +0 -17
  170. data/vendor/depot_tools/man/src/git-cherry-pick-upload.txt +0 -35
  171. data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/trychange_oauth2.json +0 -8
  172. data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/trychange_oauth2_json_win.json +0 -196
  173. data/vendor/depot_tools/recipes/recipe_modules/rietveld/__init__.py +0 -6
  174. data/vendor/depot_tools/recipes/recipe_modules/rietveld/api.py +0 -97
  175. data/vendor/depot_tools/recipes/recipe_modules/rietveld/examples/full.expected/basic.json +0 -8
  176. data/vendor/depot_tools/recipes/recipe_modules/rietveld/examples/full.expected/buildbot.json +0 -30
  177. data/vendor/depot_tools/recipes/recipe_modules/rietveld/examples/full.expected/no_auth.json +0 -27
  178. data/vendor/depot_tools/recipes/recipe_modules/rietveld/examples/full.py +0 -38
  179. data/vendor/depot_tools/recipes/recipe_modules/tryserver/examples/full.expected/with_rietveld_patch.json +0 -69
  180. data/vendor/depot_tools/recipes/recipe_modules/tryserver/examples/full.expected/with_rietveld_patch_new.json +0 -69
  181. data/vendor/depot_tools/third_party/cq_client/OWNERS +0 -2
  182. data/vendor/depot_tools/third_party/cq_client/README.depot_tools.md +0 -2
  183. data/vendor/depot_tools/third_party/cq_client/README.md +0 -59
  184. data/vendor/depot_tools/third_party/cq_client/__init__.py +0 -3
  185. data/vendor/depot_tools/third_party/cq_client/v1/__init__.py +0 -3
  186. data/vendor/depot_tools/third_party/cq_client/v1/cq.pb.go +0 -810
  187. data/vendor/depot_tools/third_party/cq_client/v1/cq.proto +0 -281
  188. data/vendor/depot_tools/third_party/cq_client/v1/cq_pb2.py +0 -794
  189. data/vendor/depot_tools/third_party/cq_client/v1/testdata/cq_both.cfg +0 -71
  190. data/vendor/depot_tools/third_party/cq_client/v1/testdata/cq_gerrit.cfg +0 -58
  191. data/vendor/depot_tools/third_party/cq_client/v1/testdata/cq_rietveld.cfg +0 -60
  192. data/vendor/depot_tools/third_party/cq_client/v2/__init__.py +0 -3
  193. data/vendor/depot_tools/third_party/cq_client/v2/cq.pb.go +0 -792
  194. data/vendor/depot_tools/third_party/cq_client/v2/cq.proto +0 -270
  195. data/vendor/depot_tools/third_party/cq_client/v2/cq_pb2.py +0 -841
@@ -1,39 +0,0 @@
1
- require 'rbconfig'
2
- require File.expand_path '../compiler/generic_compiler', __FILE__
3
- require File.expand_path '../compiler/gcc', __FILE__
4
- require File.expand_path '../compiler/clang', __FILE__
5
- require File.expand_path '../compiler/apple_llvm', __FILE__
6
-
7
- module Libv8
8
- module Compiler
9
- module_function
10
-
11
- def type_of(compiler)
12
- case version_string_of(compiler)
13
- when /^Apple LLVM\b/ then AppleLLVM
14
- when /\bclang\b/i then Clang
15
- when /^gcc/i then GCC
16
- else GenericCompiler
17
- end
18
- end
19
-
20
- def version_string_of(compiler)
21
- command_result = execute_command "env LC_ALL=C LANG=C #{compiler} -v 2>&1"
22
-
23
- unless command_result.status.success?
24
- raise "Could not get version string of compiler #{compiler}"
25
- end
26
-
27
- command_result.output
28
- end
29
-
30
- def execute_command(command)
31
- output = `#{command}`
32
- status = $?
33
- ExecutionResult.new output, status
34
- end
35
-
36
- class ExecutionResult < Struct.new(:output, :status)
37
- end
38
- end
39
- end
@@ -1,22 +0,0 @@
1
- module Libv8
2
- module Compiler
3
- class AppleLLVM < Clang
4
- LLVM_VERSION_REGEXP = /Apple LLVM version (\d+\.\d+(\.\d+)*) \(/i
5
- REQUIRED_VERSION = '4.3'
6
-
7
- def name
8
- 'Apple LLVM'
9
- end
10
-
11
- private
12
-
13
- def required_version
14
- REQUIRED_VERSION
15
- end
16
-
17
- def version_regexp
18
- LLVM_VERSION_REGEXP
19
- end
20
- end
21
- end
22
- end
@@ -1,22 +0,0 @@
1
- module Libv8
2
- module Compiler
3
- class Clang < GenericCompiler
4
- CLANG_VERSION_REGEXP = /clang version (\d+\.\d+(\.\d+)*) \(/i
5
- REQUIRED_VERSION = '3.1'
6
-
7
- def name
8
- 'clang'
9
- end
10
-
11
- private
12
-
13
- def required_version
14
- REQUIRED_VERSION
15
- end
16
-
17
- def version_regexp
18
- CLANG_VERSION_REGEXP
19
- end
20
- end
21
- end
22
- end
@@ -1,22 +0,0 @@
1
- module Libv8
2
- module Compiler
3
- class GCC < GenericCompiler
4
- GCC_VERSION_REGEXP = /gcc version (\d+\.\d+(\.\d+)*)/i
5
- REQUIRED_VERSION = '4.7'
6
-
7
- def name
8
- 'GCC'
9
- end
10
-
11
- private
12
-
13
- def required_version
14
- REQUIRED_VERSION
15
- end
16
-
17
- def version_regexp
18
- GCC_VERSION_REGEXP
19
- end
20
- end
21
- end
22
- end
@@ -1,66 +0,0 @@
1
- module Libv8
2
- module Compiler
3
- class GenericCompiler
4
- GENERIC_VERSION_REGEXP = /(\d+\.\d+(\.\d+)*)/
5
- GENERIC_TARGET_REGEXP = /Target: ([a-z0-9\-_.]*)/
6
-
7
- def initialize(command)
8
- @command = command
9
- end
10
-
11
- def name
12
- File.basename @command
13
- end
14
-
15
- def to_s
16
- @command
17
- end
18
-
19
- def version
20
- version_string =~ version_regexp
21
- $1
22
- end
23
-
24
- def target
25
- version_string =~ target_regexp
26
- $1
27
- end
28
-
29
- def compatible?
30
- return false unless required_version && !version.nil?
31
-
32
- (string_to_semver(version) <=> string_to_semver(required_version)) > -1
33
- end
34
-
35
- def call(*arguments)
36
- Compiler::execute_command arguments.unshift(@command).join(' ')
37
- end
38
-
39
- private
40
-
41
- def version_string
42
- begin
43
- Compiler::version_string_of @command
44
- rescue StandardError
45
- nil
46
- end
47
- end
48
-
49
- def version_regexp
50
- GENERIC_VERSION_REGEXP
51
- end
52
-
53
- def target_regexp
54
- GENERIC_TARGET_REGEXP
55
- end
56
-
57
- def required_version
58
- nil
59
- end
60
-
61
- def string_to_semver(version)
62
- version.split('.').map(&:to_i)
63
- end
64
- end
65
- end
66
- end
@@ -1,13 +0,0 @@
1
- module Libv8
2
- module Make
3
- module_function
4
-
5
- def make
6
- unless defined?(@make)
7
- @make = `which gmake 2> /dev/null`.chomp
8
- @make = `which make`.chomp unless $?.success?
9
- end
10
- @make
11
- end
12
- end
13
- end
@@ -1,21 +0,0 @@
1
- module Libv8
2
- module Patcher
3
- PATCH_DIRECTORY = File.expand_path '../../../patches', __FILE__
4
-
5
- module_function
6
-
7
- def patch!
8
- File.open(".applied_patches", File::RDWR|File::CREAT) do |f|
9
- available_patches = Dir.glob(File.join(PATCH_DIRECTORY, '*.patch')).sort
10
- applied_patches = f.readlines.map(&:chomp)
11
-
12
- (available_patches - applied_patches).each do |patch|
13
- puts "Applying #{patch}"
14
- `patch -p1 -N < #{patch}`
15
- fail "failed to apply patch #{patch}" unless $?.success?
16
- f.puts patch
17
- end
18
- end
19
- end
20
- end
21
- end
@@ -1,26 +0,0 @@
1
- From a018c0c78b9d40c9d9787fe969530e40fca5d38a Mon Sep 17 00:00:00 2001
2
- From: Petko Bordjukov <bordjukov@gmail.com>
3
- Date: Mon, 25 Jul 2016 00:00:19 +0300
4
- Subject: [PATCH 1/5] Build a standalone static library
5
-
6
- ---
7
- gypfiles/standalone.gypi | 3 +++
8
- 1 file changed, 3 insertions(+)
9
-
10
- diff --git a/gypfiles/standalone.gypi b/gypfiles/standalone.gypi
11
- index 63930d8aef..d0d00d3f67 100644
12
- --- a/gypfiles/standalone.gypi
13
- +++ b/gypfiles/standalone.gypi
14
- @@ -517,6 +517,9 @@
15
- }], # fastbuild!=0
16
- ],
17
- 'target_conditions': [
18
- + ['_type=="static_library"', {
19
- + 'standalone_static_library': 1,
20
- + }],
21
- ['v8_code == 0', {
22
- 'defines!': [
23
- 'DEBUG',
24
- --
25
- 2.15.1
26
-
@@ -1,85 +0,0 @@
1
- From 9ec36a77bb241ee4532553809b1ec7281ea998b1 Mon Sep 17 00:00:00 2001
2
- From: Petko Bordjukov <bordjukov@gmail.com>
3
- Date: Fri, 28 Jul 2017 11:11:08 +0300
4
- Subject: [PATCH 2/5] Don't compile unnecessary stuff
5
-
6
- ---
7
- Makefile | 9 ++-------
8
- gypfiles/all.gyp | 33 ---------------------------------
9
- 2 files changed, 2 insertions(+), 40 deletions(-)
10
-
11
- diff --git a/Makefile b/Makefile
12
- index 167ebf8c08..d9d0b9b306 100644
13
- --- a/Makefile
14
- +++ b/Makefile
15
- @@ -268,14 +268,9 @@ ANDROID_ARCHES = android_ia32 android_x64 android_arm android_arm64 \
16
- android_mipsel
17
-
18
- # List of files that trigger Makefile regeneration:
19
- -GYPFILES = third_party/icu/icu.gypi third_party/icu/icu.gyp \
20
- - gypfiles/shim_headers.gypi gypfiles/features.gypi \
21
- - gypfiles/standalone.gypi \
22
- +GYPFILES = gypfiles/features.gypi gypfiles/standalone.gypi \
23
- gypfiles/toolchain.gypi gypfiles/all.gyp gypfiles/mac/asan.gyp \
24
- - test/cctest/cctest.gyp test/fuzzer/fuzzer.gyp \
25
- - test/unittests/unittests.gyp src/v8.gyp \
26
- - tools/parser-shell.gyp testing/gmock.gyp testing/gtest.gyp \
27
- - samples/samples.gyp src/third_party/vtune/v8vtune.gyp src/d8.gyp
28
- + src/v8.gyp src/d8.gyp
29
-
30
- # If vtunejit=on, the v8vtune.gyp will be appended.
31
- ifeq ($(vtunejit), on)
32
- diff --git a/gypfiles/all.gyp b/gypfiles/all.gyp
33
- index bc9d9650eb..96820a0ecc 100644
34
- --- a/gypfiles/all.gyp
35
- +++ b/gypfiles/all.gyp
36
- @@ -9,8 +9,6 @@
37
- 'type': 'none',
38
- 'dependencies': [
39
- '../src/d8.gyp:d8',
40
- - '../test/inspector/inspector.gyp:*',
41
- - '../test/mkgrokdump/mkgrokdump.gyp:*',
42
- ],
43
- 'conditions': [
44
- ['component!="shared_library"', {
45
- @@ -18,37 +16,6 @@
46
- '../tools/parser-shell.gyp:parser-shell',
47
- ],
48
- }],
49
- - # These items don't compile for Android on Mac.
50
- - ['host_os!="mac" or OS!="android"', {
51
- - 'dependencies': [
52
- - '../samples/samples.gyp:*',
53
- - '../test/cctest/cctest.gyp:*',
54
- - '../test/fuzzer/fuzzer.gyp:*',
55
- - '../test/unittests/unittests.gyp:*',
56
- - ],
57
- - }],
58
- - ['test_isolation_mode != "noop"', {
59
- - 'dependencies': [
60
- - '../test/bot_default.gyp:*',
61
- - '../test/benchmarks/benchmarks.gyp:*',
62
- - '../test/debugger/debugger.gyp:*',
63
- - '../test/default.gyp:*',
64
- - '../test/intl/intl.gyp:*',
65
- - '../test/message/message.gyp:*',
66
- - '../test/mjsunit/mjsunit.gyp:*',
67
- - '../test/mozilla/mozilla.gyp:*',
68
- - '../test/optimize_for_size.gyp:*',
69
- - '../test/perf.gyp:*',
70
- - '../test/preparser/preparser.gyp:*',
71
- - '../test/test262/test262.gyp:*',
72
- - '../test/webkit/webkit.gyp:*',
73
- - '../tools/check-static-initializers.gyp:*',
74
- - '../tools/gcmole/run_gcmole.gyp:*',
75
- - '../tools/jsfunfuzz/jsfunfuzz.gyp:*',
76
- - '../tools/run-deopt-fuzzer.gyp:*',
77
- - '../tools/run-valgrind.gyp:*',
78
- - ],
79
- - }],
80
- ]
81
- }
82
- ]
83
- --
84
- 2.15.1
85
-
@@ -1,25 +0,0 @@
1
- From 68eadedb9728ee6ce634d646835ef0aab2d23be6 Mon Sep 17 00:00:00 2001
2
- From: Petko Bordjukov <bordjukov@gmail.com>
3
- Date: Mon, 25 Jul 2016 00:05:47 +0300
4
- Subject: [PATCH 3/5] Use the -fPIC flag for the static library
5
-
6
- ---
7
- gypfiles/standalone.gypi | 2 +-
8
- 1 file changed, 1 insertion(+), 1 deletion(-)
9
-
10
- diff --git a/gypfiles/standalone.gypi b/gypfiles/standalone.gypi
11
- index d0d00d3f67..f01bd48596 100644
12
- --- a/gypfiles/standalone.gypi
13
- +++ b/gypfiles/standalone.gypi
14
- @@ -797,7 +797,7 @@
15
- [ 'visibility=="hidden" and v8_enable_backtrace==0', {
16
- 'cflags': [ '-fvisibility=hidden' ],
17
- }],
18
- - [ 'component=="shared_library"', {
19
- + [ 'component=="shared_library" or component=="static_library" and (v8_target_arch=="x64" or v8_target_arch=="arm64" or v8_target_arch=="arm")', {
20
- 'cflags': [ '-fPIC', ],
21
- }],
22
- [ 'clang==0 and coverage==1', {
23
- --
24
- 2.15.1
25
-
@@ -1,25 +0,0 @@
1
- From 943282d83340d51a7749f59708e5dca5bbe96099 Mon Sep 17 00:00:00 2001
2
- From: Jb Aviat <jb@sqreen.io>
3
- Date: Mon, 27 Feb 2017 11:14:42 +0200
4
- Subject: [PATCH 4/5] Do not embed debug symbols in macOS libraries
5
-
6
- This lowers dramatically the produced binary size
7
- ---
8
- gypfiles/standalone.gypi | 1 +
9
- 1 file changed, 1 insertion(+)
10
-
11
- diff --git a/gypfiles/standalone.gypi b/gypfiles/standalone.gypi
12
- index f01bd48596..25ca6b8606 100644
13
- --- a/gypfiles/standalone.gypi
14
- +++ b/gypfiles/standalone.gypi
15
- @@ -1056,6 +1056,7 @@
16
- 'GCC_ENABLE_CPP_EXCEPTIONS': 'NO', # -fno-exceptions
17
- 'GCC_ENABLE_CPP_RTTI': 'NO', # -fno-rtti
18
- 'GCC_ENABLE_PASCAL_STRINGS': 'NO', # No -mpascal-strings
19
- + 'GCC_GENERATE_DEBUGGING_SYMBOLS': 'NO', # No -gdwarf-2
20
- # GCC_INLINES_ARE_PRIVATE_EXTERN maps to -fvisibility-inlines-hidden
21
- 'GCC_INLINES_ARE_PRIVATE_EXTERN': 'YES',
22
- 'GCC_SYMBOLS_PRIVATE_EXTERN': 'YES', # -fvisibility=hidden
23
- --
24
- 2.15.1
25
-
@@ -1,321 +0,0 @@
1
- From 723ed88782dbe9462aba5711a70be628d694bfda Mon Sep 17 00:00:00 2001
2
- From: Leszek Swirski <leszeks@chromium.org>
3
- Date: Tue, 17 Oct 2017 17:20:15 +0100
4
- Subject: [PATCH 5/5] Remove TryInstallOptimizedCode
5
-
6
- Removes the interrupt check and runtime call to TryInstallOptimizedCode
7
- from the optimization marker checks (i.e. CompileLazy and
8
- InterpreterEntryTrampoline). Instead, we rely on the other interrupt
9
- sources (in particular stack checks at function entries and loop
10
- headers) to install optimized code for us.
11
-
12
- This will hopefully not cause regressions, as we have plenty of other
13
- interrupt checks, but it may delay optimized code execution for
14
- some function by one function call.
15
-
16
- Bug: v8:6933
17
- Change-Id: Ieadfff7ae2078d2a84085294158ad9a706eb9c64
18
- Reviewed-on: https://chromium-review.googlesource.com/723475
19
- Reviewed-by: Ross McIlroy <rmcilroy@chromium.org>
20
- Commit-Queue: Leszek Swirski <leszeks@chromium.org>
21
- Cr-Commit-Position: refs/heads/master@{#48667}
22
- ---
23
- src/builtins/arm/builtins-arm.cc | 13 +++----------
24
- src/builtins/arm64/builtins-arm64.cc | 13 +++----------
25
- src/builtins/ia32/builtins-ia32.cc | 15 +++------------
26
- src/builtins/mips/builtins-mips.cc | 13 +++----------
27
- src/builtins/mips64/builtins-mips64.cc | 13 +++----------
28
- src/builtins/ppc/builtins-ppc.cc | 14 +++-----------
29
- src/builtins/s390/builtins-s390.cc | 13 +++----------
30
- src/builtins/x64/builtins-x64.cc | 13 +++----------
31
- src/runtime/runtime-compiler.cc | 21 ---------------------
32
- src/runtime/runtime.h | 1 -
33
- 10 files changed, 24 insertions(+), 105 deletions(-)
34
-
35
- diff --git a/src/builtins/arm/builtins-arm.cc b/src/builtins/arm/builtins-arm.cc
36
- index bf359d69e9..e8fa690660 100644
37
- --- a/src/builtins/arm/builtins-arm.cc
38
- +++ b/src/builtins/arm/builtins-arm.cc
39
- @@ -782,22 +782,15 @@ static void MaybeTailCallOptimizedCodeSlot(MacroAssembler* masm,
40
- Runtime::kCompileOptimized_Concurrent);
41
-
42
- {
43
- - // Otherwise, the marker is InOptimizationQueue.
44
- + // Otherwise, the marker is InOptimizationQueue, so fall through hoping
45
- + // that an interrupt will eventually update the slot with optimized code.
46
- if (FLAG_debug_code) {
47
- __ cmp(
48
- optimized_code_entry,
49
- Operand(Smi::FromEnum(OptimizationMarker::kInOptimizationQueue)));
50
- __ Assert(eq, kExpectedOptimizationSentinel);
51
- }
52
- - // Checking whether the queued function is ready for install is
53
- - // optional, since we come across interrupts and stack checks elsewhere.
54
- - // However, not checking may delay installing ready functions, and
55
- - // always checking would be quite expensive. A good compromise is to
56
- - // first check against stack limit as a cue for an interrupt signal.
57
- - __ LoadRoot(scratch2, Heap::kStackLimitRootIndex);
58
- - __ cmp(sp, Operand(scratch2));
59
- - __ b(hs, &fallthrough);
60
- - GenerateTailCallToReturnedCode(masm, Runtime::kTryInstallOptimizedCode);
61
- + __ jmp(&fallthrough);
62
- }
63
- }
64
-
65
- diff --git a/src/builtins/arm64/builtins-arm64.cc b/src/builtins/arm64/builtins-arm64.cc
66
- index b1d5d32b9a..7aaa2d0003 100644
67
- --- a/src/builtins/arm64/builtins-arm64.cc
68
- +++ b/src/builtins/arm64/builtins-arm64.cc
69
- @@ -788,22 +788,15 @@ static void MaybeTailCallOptimizedCodeSlot(MacroAssembler* masm,
70
- Runtime::kCompileOptimized_Concurrent);
71
-
72
- {
73
- - // Otherwise, the marker is InOptimizationQueue.
74
- + // Otherwise, the marker is InOptimizationQueue, so fall through hoping
75
- + // that an interrupt will eventually update the slot with optimized code.
76
- if (FLAG_debug_code) {
77
- __ Cmp(
78
- optimized_code_entry,
79
- Operand(Smi::FromEnum(OptimizationMarker::kInOptimizationQueue)));
80
- __ Assert(eq, kExpectedOptimizationSentinel);
81
- }
82
- -
83
- - // Checking whether the queued function is ready for install is optional,
84
- - // since we come across interrupts and stack checks elsewhere. However,
85
- - // not checking may delay installing ready functions, and always checking
86
- - // would be quite expensive. A good compromise is to first check against
87
- - // stack limit as a cue for an interrupt signal.
88
- - __ CompareRoot(masm->StackPointer(), Heap::kStackLimitRootIndex);
89
- - __ B(hs, &fallthrough);
90
- - GenerateTailCallToReturnedCode(masm, Runtime::kTryInstallOptimizedCode);
91
- + __ B(&fallthrough);
92
- }
93
- }
94
-
95
- diff --git a/src/builtins/ia32/builtins-ia32.cc b/src/builtins/ia32/builtins-ia32.cc
96
- index ee15025520..a689c3131d 100644
97
- --- a/src/builtins/ia32/builtins-ia32.cc
98
- +++ b/src/builtins/ia32/builtins-ia32.cc
99
- @@ -698,24 +698,15 @@ static void MaybeTailCallOptimizedCodeSlot(MacroAssembler* masm,
100
- Runtime::kCompileOptimized_Concurrent);
101
-
102
- {
103
- - // Otherwise, the marker is InOptimizationQueue.
104
- + // Otherwise, the marker is InOptimizationQueue, so fall through hoping
105
- + // that an interrupt will eventually update the slot with optimized code.
106
- if (FLAG_debug_code) {
107
- __ cmp(
108
- optimized_code_entry,
109
- Immediate(Smi::FromEnum(OptimizationMarker::kInOptimizationQueue)));
110
- __ Assert(equal, kExpectedOptimizationSentinel);
111
- }
112
- -
113
- - // Checking whether the queued function is ready for install is optional,
114
- - // since we come across interrupts and stack checks elsewhere. However,
115
- - // not checking may delay installing ready functions, and always checking
116
- - // would be quite expensive. A good compromise is to first check against
117
- - // stack limit as a cue for an interrupt signal.
118
- - ExternalReference stack_limit =
119
- - ExternalReference::address_of_stack_limit(masm->isolate());
120
- - __ cmp(esp, Operand::StaticVariable(stack_limit));
121
- - __ j(above_equal, &fallthrough);
122
- - GenerateTailCallToReturnedCode(masm, Runtime::kTryInstallOptimizedCode);
123
- + __ jmp(&fallthrough);
124
- }
125
- }
126
-
127
- diff --git a/src/builtins/mips/builtins-mips.cc b/src/builtins/mips/builtins-mips.cc
128
- index e8f846c10a..4835fb0b1b 100644
129
- --- a/src/builtins/mips/builtins-mips.cc
130
- +++ b/src/builtins/mips/builtins-mips.cc
131
- @@ -760,21 +760,14 @@ static void MaybeTailCallOptimizedCodeSlot(MacroAssembler* masm,
132
- Runtime::kCompileOptimized_Concurrent);
133
-
134
- {
135
- - // Otherwise, the marker is InOptimizationQueue.
136
- + // Otherwise, the marker is InOptimizationQueue, so fall through hoping
137
- + // that an interrupt will eventually update the slot with optimized code.
138
- if (FLAG_debug_code) {
139
- __ Assert(
140
- eq, kExpectedOptimizationSentinel, optimized_code_entry,
141
- Operand(Smi::FromEnum(OptimizationMarker::kInOptimizationQueue)));
142
- }
143
- -
144
- - // Checking whether the queued function is ready for install is optional,
145
- - // since we come across interrupts and stack checks elsewhere. However,
146
- - // not checking may delay installing ready functions, and always checking
147
- - // would be quite expensive. A good compromise is to first check against
148
- - // stack limit as a cue for an interrupt signal.
149
- - __ LoadRoot(at, Heap::kStackLimitRootIndex);
150
- - __ Branch(&fallthrough, hs, sp, Operand(at));
151
- - GenerateTailCallToReturnedCode(masm, Runtime::kTryInstallOptimizedCode);
152
- + __ jmp(&fallthrough);
153
- }
154
- }
155
-
156
- diff --git a/src/builtins/mips64/builtins-mips64.cc b/src/builtins/mips64/builtins-mips64.cc
157
- index f62750b061..2584444f1f 100644
158
- --- a/src/builtins/mips64/builtins-mips64.cc
159
- +++ b/src/builtins/mips64/builtins-mips64.cc
160
- @@ -760,21 +760,14 @@ static void MaybeTailCallOptimizedCodeSlot(MacroAssembler* masm,
161
- Runtime::kCompileOptimized_Concurrent);
162
-
163
- {
164
- - // Otherwise, the marker is InOptimizationQueue.
165
- + // Otherwise, the marker is InOptimizationQueue, so fall through hoping
166
- + // that an interrupt will eventually update the slot with optimized code.
167
- if (FLAG_debug_code) {
168
- __ Assert(
169
- eq, kExpectedOptimizationSentinel, optimized_code_entry,
170
- Operand(Smi::FromEnum(OptimizationMarker::kInOptimizationQueue)));
171
- }
172
- -
173
- - // Checking whether the queued function is ready for install is optional,
174
- - // since we come across interrupts and stack checks elsewhere. However,
175
- - // not checking may delay installing ready functions, and always checking
176
- - // would be quite expensive. A good compromise is to first check against
177
- - // stack limit as a cue for an interrupt signal.
178
- - __ LoadRoot(t0, Heap::kStackLimitRootIndex);
179
- - __ Branch(&fallthrough, hs, sp, Operand(t0));
180
- - GenerateTailCallToReturnedCode(masm, Runtime::kTryInstallOptimizedCode);
181
- + __ jmp(&fallthrough);
182
- }
183
- }
184
-
185
- diff --git a/src/builtins/ppc/builtins-ppc.cc b/src/builtins/ppc/builtins-ppc.cc
186
- index 3ed3eb686d..c242be5cf8 100644
187
- --- a/src/builtins/ppc/builtins-ppc.cc
188
- +++ b/src/builtins/ppc/builtins-ppc.cc
189
- @@ -780,23 +780,15 @@ static void MaybeTailCallOptimizedCodeSlot(MacroAssembler* masm,
190
- Runtime::kCompileOptimized_Concurrent);
191
-
192
- {
193
- - // Otherwise, the marker is InOptimizationQueue.
194
- + // Otherwise, the marker is InOptimizationQueue, so fall through hoping
195
- + // that an interrupt will eventually update the slot with optimized code.
196
- if (FLAG_debug_code) {
197
- __ CmpSmiLiteral(
198
- optimized_code_entry,
199
- Smi::FromEnum(OptimizationMarker::kInOptimizationQueue), r0);
200
- __ Assert(eq, kExpectedOptimizationSentinel);
201
- }
202
- -
203
- - // Checking whether the queued function is ready for install is optional,
204
- - // since we come across interrupts and stack checks elsewhere. However,
205
- - // not checking may delay installing ready functions, and always checking
206
- - // would be quite expensive. A good compromise is to first check against
207
- - // stack limit as a cue for an interrupt signal.
208
- - __ LoadRoot(ip, Heap::kStackLimitRootIndex);
209
- - __ cmpl(sp, ip);
210
- - __ bge(&fallthrough);
211
- - GenerateTailCallToReturnedCode(masm, Runtime::kTryInstallOptimizedCode);
212
- + __ b(&fallthrough);
213
- }
214
- }
215
-
216
- diff --git a/src/builtins/s390/builtins-s390.cc b/src/builtins/s390/builtins-s390.cc
217
- index e9ef390c69..aa9e62f217 100644
218
- --- a/src/builtins/s390/builtins-s390.cc
219
- +++ b/src/builtins/s390/builtins-s390.cc
220
- @@ -783,22 +783,15 @@ static void MaybeTailCallOptimizedCodeSlot(MacroAssembler* masm,
221
- Runtime::kCompileOptimized_Concurrent);
222
-
223
- {
224
- - // Otherwise, the marker is InOptimizationQueue.
225
- + // Otherwise, the marker is InOptimizationQueue, so fall through hoping
226
- + // that an interrupt will eventually update the slot with optimized code.
227
- if (FLAG_debug_code) {
228
- __ CmpSmiLiteral(
229
- optimized_code_entry,
230
- Smi::FromEnum(OptimizationMarker::kInOptimizationQueue), r0);
231
- __ Assert(eq, kExpectedOptimizationSentinel);
232
- }
233
- -
234
- - // Checking whether the queued function is ready for install is optional,
235
- - // since we come across interrupts and stack checks elsewhere. However,
236
- - // not checking may delay installing ready functions, and always checking
237
- - // would be quite expensive. A good compromise is to first check against
238
- - // stack limit as a cue for an interrupt signal.
239
- - __ CmpLogicalP(sp, RootMemOperand(Heap::kStackLimitRootIndex));
240
- - __ bge(&fallthrough, Label::kNear);
241
- - GenerateTailCallToReturnedCode(masm, Runtime::kTryInstallOptimizedCode);
242
- + __ b(&fallthrough, Label::kNear);
243
- }
244
- }
245
-
246
- diff --git a/src/builtins/x64/builtins-x64.cc b/src/builtins/x64/builtins-x64.cc
247
- index 713475cd34..81c92681d5 100644
248
- --- a/src/builtins/x64/builtins-x64.cc
249
- +++ b/src/builtins/x64/builtins-x64.cc
250
- @@ -781,21 +781,14 @@ static void MaybeTailCallOptimizedCodeSlot(MacroAssembler* masm,
251
- Runtime::kCompileOptimized_Concurrent);
252
-
253
- {
254
- - // Otherwise, the marker is InOptimizationQueue.
255
- + // Otherwise, the marker is InOptimizationQueue, so fall through hoping
256
- + // that an interrupt will eventually update the slot with optimized code.
257
- if (FLAG_debug_code) {
258
- __ SmiCompare(optimized_code_entry,
259
- Smi::FromEnum(OptimizationMarker::kInOptimizationQueue));
260
- __ Assert(equal, kExpectedOptimizationSentinel);
261
- }
262
- -
263
- - // Checking whether the queued function is ready for install is optional,
264
- - // since we come across interrupts and stack checks elsewhere. However,
265
- - // not checking may delay installing ready functions, and always checking
266
- - // would be quite expensive. A good compromise is to first check against
267
- - // stack limit as a cue for an interrupt signal.
268
- - __ CompareRoot(rsp, Heap::kStackLimitRootIndex);
269
- - __ j(above_equal, &fallthrough);
270
- - GenerateTailCallToReturnedCode(masm, Runtime::kTryInstallOptimizedCode);
271
- + __ jmp(&fallthrough);
272
- }
273
- }
274
-
275
- diff --git a/src/runtime/runtime-compiler.cc b/src/runtime/runtime-compiler.cc
276
- index 1cc00f5b7e..b445037d08 100644
277
- --- a/src/runtime/runtime-compiler.cc
278
- +++ b/src/runtime/runtime-compiler.cc
279
- @@ -302,27 +302,6 @@ RUNTIME_FUNCTION(Runtime_CompileForOnStackReplacement) {
280
- return NULL;
281
- }
282
-
283
- -
284
- -RUNTIME_FUNCTION(Runtime_TryInstallOptimizedCode) {
285
- - HandleScope scope(isolate);
286
- - DCHECK_EQ(1, args.length());
287
- - CONVERT_ARG_HANDLE_CHECKED(JSFunction, function, 0);
288
- -
289
- - // First check if this is a real stack overflow.
290
- - StackLimitCheck check(isolate);
291
- - if (check.JsHasOverflowed(kStackSpaceRequiredForCompilation * KB)) {
292
- - return isolate->StackOverflow();
293
- - }
294
- -
295
- - // Only try to install optimized functions if the interrupt was InstallCode.
296
- - if (isolate->stack_guard()->CheckAndClearInstallCode()) {
297
- - isolate->optimizing_compile_dispatcher()->InstallOptimizedFunctions();
298
- - }
299
- -
300
- - return (function->IsOptimized()) ? function->code()
301
- - : function->shared()->code();
302
- -}
303
- -
304
- static Object* CompileGlobalEval(Isolate* isolate, Handle<String> source,
305
- Handle<SharedFunctionInfo> outer_info,
306
- LanguageMode language_mode,
307
- diff --git a/src/runtime/runtime.h b/src/runtime/runtime.h
308
- index e7084a8cca..a11d274d25 100644
309
- --- a/src/runtime/runtime.h
310
- +++ b/src/runtime/runtime.h
311
- @@ -120,7 +120,6 @@ namespace internal {
312
- F(NotifyStubFailure, 0, 1) \
313
- F(NotifyDeoptimized, 0, 1) \
314
- F(CompileForOnStackReplacement, 1, 1) \
315
- - F(TryInstallOptimizedCode, 1, 1) \
316
- F(ResolvePossiblyDirectEval, 6, 1) \
317
- F(InstantiateAsmJs, 4, 1)
318
-
319
- --
320
- 2.15.1
321
-