libv8 6.0.286.54.3 → 6.2.414.42.0beta1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.travis.yml +5 -3
- data/CHANGELOG.md +4 -0
- data/Rakefile +3 -3
- data/lib/libv8/version.rb +1 -1
- data/patches/0001-Build-a-standalone-static-library.patch +4 -4
- data/patches/0002-Don-t-compile-unnecessary-stuff.patch +12 -14
- data/patches/0003-Use-the-fPIC-flag-for-the-static-library.patch +4 -4
- data/patches/0004-Do-not-embed-debug-symbols-in-macOS-libraries.patch +4 -4
- data/patches/0005-avoid-constructor-inheritance-due-to-compilation-iss.patch +81 -0
- data/patches/9001-Arm64-Fix-host-architecture-detection.patch +37 -0
- data/vendor/depot_tools/.gitignore +1 -0
- data/vendor/depot_tools/OWNERS +0 -1
- data/vendor/depot_tools/auth.py +154 -6
- data/vendor/depot_tools/bootstrap/win/manifest.txt +1 -1
- data/vendor/depot_tools/bootstrap/win/manifest_bleeding_edge.txt +1 -1
- data/vendor/depot_tools/cipd_bin_setup.sh +12 -2
- data/vendor/depot_tools/cipd_manifest.txt +4 -1
- data/vendor/depot_tools/fetch.py +2 -0
- data/vendor/depot_tools/gclient.py +4 -6
- data/vendor/depot_tools/gclient_scm.py +12 -5
- data/vendor/depot_tools/gerrit_util.py +23 -1
- data/vendor/depot_tools/git_cache.py +59 -23
- data/vendor/depot_tools/git_cl.py +114 -43
- data/vendor/depot_tools/git_common.py +7 -0
- data/vendor/depot_tools/git_rebase_update.py +1 -0
- data/vendor/depot_tools/git_upstream_diff.py +12 -5
- data/vendor/depot_tools/gsutil.py +10 -0
- data/vendor/depot_tools/infra/config/OWNERS +0 -1
- data/vendor/depot_tools/infra/config/cq.cfg +6 -5
- data/vendor/depot_tools/infra/config/recipes.cfg +1 -1
- data/vendor/depot_tools/mac_toolchain +12 -0
- data/vendor/depot_tools/man/html/git-upstream-diff.html +10 -6
- data/vendor/depot_tools/man/man1/git-upstream-diff.1 +18 -7
- data/vendor/depot_tools/man/src/git-upstream-diff.txt +8 -5
- data/vendor/depot_tools/owners.py +9 -2
- data/vendor/depot_tools/presubmit_canned_checks.py +122 -0
- data/vendor/depot_tools/presubmit_support.py +57 -4
- data/vendor/depot_tools/recipes/OWNERS +0 -1
- data/vendor/depot_tools/recipes/README.recipes.md +20 -17
- data/vendor/depot_tools/recipes/recipe_modules/bot_update/__init__.py +1 -1
- data/vendor/depot_tools/recipes/recipe_modules/bot_update/api.py +15 -4
- data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/basic.json +23 -0
- data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/basic_with_branch_heads.json +46 -0
- data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/buildbot.json +23 -0
- data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/clobber.json +46 -0
- data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/deprecated_got_revision_mapping.json +22 -0
- data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/gerrit_no_rebase_patch_ref.json +46 -0
- data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/gerrit_no_reset.json +46 -0
- data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/no_shallow.json +46 -0
- data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/reset_root_solution_revision.json +46 -0
- data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/trychange.json +46 -0
- data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/trychange_oauth2_buildbot.json +46 -0
- data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/trychange_oauth2_json.json +46 -0
- data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/trychange_oauth2_json_win.json +46 -0
- data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/tryjob.json +46 -0
- data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/tryjob_empty_revision.json +46 -0
- data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/tryjob_fail.json +4 -45
- data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/tryjob_fail_patch.json +23 -0
- data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/tryjob_fail_patch_download.json +23 -0
- data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/tryjob_gerrit_angle.json +46 -0
- data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/tryjob_gerrit_angle_deprecated.json +46 -0
- data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/tryjob_gerrit_feature_branch.json +46 -0
- data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/tryjob_gerrit_v8.json +46 -0
- data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/tryjob_gerrit_v8_feature_branch.json +46 -0
- data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/tryjob_gerrit_webrtc.json +46 -0
- data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/tryjob_v8.json +46 -0
- data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/tryjob_v8_head_by_default.json +46 -0
- data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/with_manifest_name.json +194 -0
- data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/with_manifest_name_no_patch.json +105 -0
- data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/with_tags.json +46 -0
- data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.py +12 -2
- data/vendor/depot_tools/recipes/recipe_modules/bot_update/resources/bot_update.py +226 -149
- data/vendor/depot_tools/recipes/recipe_modules/bot_update/test_api.py +16 -5
- data/vendor/depot_tools/recipes/recipe_modules/gclient/config.py +1 -2
- data/vendor/depot_tools/recipes/recipes/fetch_end_to_end_test.expected/basic.json +11 -0
- data/vendor/depot_tools/rietveld.py +1 -1
- data/vendor/depot_tools/roll_dep.py +4 -1
- data/vendor/depot_tools/split_cl.py +3 -0
- data/vendor/depot_tools/third_party/cq_client/OWNERS +0 -1
- data/vendor/depot_tools/third_party/mock/LICENSE.txt +26 -0
- data/vendor/depot_tools/third_party/mock/README.chromium +24 -0
- data/vendor/depot_tools/third_party/mock/__init__.py +2366 -0
- data/vendor/depot_tools/watchlists.py +12 -5
- metadata +12 -5
- data/patches/0005-Fix-GCC-7-build-errors.patch +0 -147
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA1:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 24f1e27ffdebdfda185ee877d56047941a3b7743
|
|
4
|
+
data.tar.gz: 48beb24665420d51ff4485856d8c501a24e57168
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 9b924dd26d7921729c5d61d4f86259efe30ee232af5be699b0898c9aa28bb27c51fa228ae352c019353e20008138fb6c66dae5be1903ad3a199bffa9dcbc2d7d
|
|
7
|
+
data.tar.gz: 79c9c625f18a36b69321ac7cbfd904457c43e46903e59f86f4ccbd261cc60d70f025cce60eac5fce9594baefc83a8ff331633cc663f52d3739510dd11dc39bd3
|
data/.travis.yml
CHANGED
|
@@ -12,8 +12,9 @@ matrix:
|
|
|
12
12
|
- rvm: 2.4.0
|
|
13
13
|
os: osx
|
|
14
14
|
osx_image: xcode7.3
|
|
15
|
-
-
|
|
16
|
-
|
|
15
|
+
- os: osx
|
|
16
|
+
osx_image: xcode6.4
|
|
17
|
+
- os: osx
|
|
17
18
|
osx_image: xcode9.1
|
|
18
19
|
- rvm: system
|
|
19
20
|
os: osx
|
|
@@ -33,6 +34,8 @@ matrix:
|
|
|
33
34
|
allow_failures:
|
|
34
35
|
- rvm: 1.9.3
|
|
35
36
|
- rvm: rbx
|
|
37
|
+
- os: osx
|
|
38
|
+
osx_image: xcode6.4
|
|
36
39
|
fast_finish: true
|
|
37
40
|
dist: trusty
|
|
38
41
|
addons:
|
|
@@ -43,7 +46,6 @@ bundler_args: --jobs=4 --retry=3
|
|
|
43
46
|
before_install:
|
|
44
47
|
- if [ "$TRAVIS_OS_NAME" == "linux" ]; then gem update bundler; fi
|
|
45
48
|
- if [ "$TRAVIS_OS_NAME" == "linux" ]; then gem update --system; fi
|
|
46
|
-
- if [ "$TRAVIS_OS_NAME" == "osx" -a "$TRAVIS_RUBY_VERSION" == "2.0.0" ]; then rvm rubygems current; fi
|
|
47
49
|
- if [ "$TRAVIS_OS_NAME" == "osx" -a "$TRAVIS_RUBY_VERSION" == "system" ]; then sudo gem install bundler; fi
|
|
48
50
|
- if [ "$TRAVIS_OS_NAME" == "osx" -a "$TRAVIS_RUBY_VERSION" != "system" ]; then gem update --system; fi
|
|
49
51
|
- if [ "$TRAVIS_OS_NAME" == "osx" -a "$TRAVIS_RUBY_VERSION" != "system" ]; then gem update bundler; fi
|
data/CHANGELOG.md
CHANGED
data/Rakefile
CHANGED
|
@@ -70,9 +70,9 @@ namespace :build do
|
|
|
70
70
|
Dir.chdir(arch_dir) do
|
|
71
71
|
ENV['RUBYLIB'] = nil # https://github.com/mitchellh/vagrant/issues/6158
|
|
72
72
|
sh "vagrant up"
|
|
73
|
-
sh "vagrant ssh -c 'rm -rf ~/libv8'"
|
|
74
|
-
sh "vagrant ssh -c 'git clone /libv8/.git ~/libv8 --recursive'"
|
|
75
|
-
sh "vagrant ssh -c 'cd ~/libv8 && bundle install --path vendor/bundle'"
|
|
73
|
+
# sh "vagrant ssh -c 'rm -rf ~/libv8'"
|
|
74
|
+
# sh "vagrant ssh -c 'git clone /libv8/.git ~/libv8 --recursive'"
|
|
75
|
+
# sh "vagrant ssh -c 'cd ~/libv8 && bundle install --path vendor/bundle'"
|
|
76
76
|
sh "vagrant ssh -c 'cd ~/libv8 && env MAKEFLAGS=-j4 bundle exec rake binary'"
|
|
77
77
|
sh "vagrant status | grep scaleway" do |ok, res|
|
|
78
78
|
if ok
|
data/lib/libv8/version.rb
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
From
|
|
1
|
+
From cbe264bb5c231d06f64b48413f3f268ca490e00a Mon Sep 17 00:00:00 2001
|
|
2
2
|
From: Petko Bordjukov <bordjukov@gmail.com>
|
|
3
3
|
Date: Mon, 25 Jul 2016 00:00:19 +0300
|
|
4
4
|
Subject: [PATCH 1/5] Build a standalone static library
|
|
@@ -8,10 +8,10 @@ Subject: [PATCH 1/5] Build a standalone static library
|
|
|
8
8
|
1 file changed, 3 insertions(+)
|
|
9
9
|
|
|
10
10
|
diff --git a/gypfiles/standalone.gypi b/gypfiles/standalone.gypi
|
|
11
|
-
index
|
|
11
|
+
index 63930d8aef..d0d00d3f67 100644
|
|
12
12
|
--- a/gypfiles/standalone.gypi
|
|
13
13
|
+++ b/gypfiles/standalone.gypi
|
|
14
|
-
@@ -
|
|
14
|
+
@@ -517,6 +517,9 @@
|
|
15
15
|
}], # fastbuild!=0
|
|
16
16
|
],
|
|
17
17
|
'target_conditions': [
|
|
@@ -22,5 +22,5 @@ index 4c805bf643..6a72a23cfb 100644
|
|
|
22
22
|
'defines!': [
|
|
23
23
|
'DEBUG',
|
|
24
24
|
--
|
|
25
|
-
2.
|
|
25
|
+
2.14.3
|
|
26
26
|
|
|
@@ -1,36 +1,34 @@
|
|
|
1
|
-
From
|
|
1
|
+
From 96075b7eeeef64063186d743d1fa36e6de494a6e Mon Sep 17 00:00:00 2001
|
|
2
2
|
From: Petko Bordjukov <bordjukov@gmail.com>
|
|
3
3
|
Date: Fri, 28 Jul 2017 11:11:08 +0300
|
|
4
4
|
Subject: [PATCH 2/5] Don't compile unnecessary stuff
|
|
5
5
|
|
|
6
6
|
---
|
|
7
|
-
Makefile |
|
|
7
|
+
Makefile | 9 ++-------
|
|
8
8
|
gypfiles/all.gyp | 33 ---------------------------------
|
|
9
|
-
2 files changed,
|
|
9
|
+
2 files changed, 2 insertions(+), 40 deletions(-)
|
|
10
10
|
|
|
11
11
|
diff --git a/Makefile b/Makefile
|
|
12
|
-
index
|
|
12
|
+
index eb146ac244..902832af48 100644
|
|
13
13
|
--- a/Makefile
|
|
14
14
|
+++ b/Makefile
|
|
15
|
-
@@ -
|
|
16
|
-
android_mipsel
|
|
15
|
+
@@ -268,14 +268,9 @@ ANDROID_ARCHES = android_ia32 android_x64 android_arm android_arm64 \
|
|
16
|
+
android_mipsel
|
|
17
17
|
|
|
18
18
|
# List of files that trigger Makefile regeneration:
|
|
19
19
|
-GYPFILES = third_party/icu/icu.gypi third_party/icu/icu.gyp \
|
|
20
20
|
- gypfiles/shim_headers.gypi gypfiles/features.gypi \
|
|
21
21
|
- gypfiles/standalone.gypi \
|
|
22
|
-
|
|
22
|
+
+GYPFILES = gypfiles/features.gypi gypfiles/standalone.gypi \
|
|
23
|
+
gypfiles/toolchain.gypi gypfiles/all.gyp gypfiles/mac/asan.gyp \
|
|
23
24
|
- test/cctest/cctest.gyp test/fuzzer/fuzzer.gyp \
|
|
24
25
|
- test/unittests/unittests.gyp src/v8.gyp \
|
|
25
26
|
- tools/parser-shell.gyp testing/gmock.gyp testing/gtest.gyp \
|
|
26
|
-
-
|
|
27
|
-
|
|
28
|
-
+GYPFILES = gypfiles/shim_headers.gypi gypfiles/features.gypi \
|
|
29
|
-
+ gypfiles/standalone.gypi gypfiles/all.gyp \
|
|
30
|
-
+ gypfiles/mac/asan.gyp src/v8.gyp tools/parser-shell.gyp \
|
|
31
|
-
src/third_party/vtune/v8vtune.gyp src/d8.gyp
|
|
27
|
+
- samples/samples.gyp src/third_party/vtune/v8vtune.gyp src/d8.gyp
|
|
28
|
+
+ src/v8.gyp src/d8.gyp
|
|
32
29
|
|
|
33
30
|
# If vtunejit=on, the v8vtune.gyp will be appended.
|
|
31
|
+
ifeq ($(vtunejit), on)
|
|
34
32
|
diff --git a/gypfiles/all.gyp b/gypfiles/all.gyp
|
|
35
33
|
index bc9d9650eb..96820a0ecc 100644
|
|
36
34
|
--- a/gypfiles/all.gyp
|
|
@@ -83,5 +81,5 @@ index bc9d9650eb..96820a0ecc 100644
|
|
|
83
81
|
}
|
|
84
82
|
]
|
|
85
83
|
--
|
|
86
|
-
2.
|
|
84
|
+
2.14.3
|
|
87
85
|
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
From
|
|
1
|
+
From 97bb118756e30cea60216d3e74ba352d76001637 Mon Sep 17 00:00:00 2001
|
|
2
2
|
From: Petko Bordjukov <bordjukov@gmail.com>
|
|
3
3
|
Date: Mon, 25 Jul 2016 00:05:47 +0300
|
|
4
4
|
Subject: [PATCH 3/5] Use the -fPIC flag for the static library
|
|
@@ -8,10 +8,10 @@ Subject: [PATCH 3/5] Use the -fPIC flag for the static library
|
|
|
8
8
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
9
9
|
|
|
10
10
|
diff --git a/gypfiles/standalone.gypi b/gypfiles/standalone.gypi
|
|
11
|
-
index
|
|
11
|
+
index d0d00d3f67..f01bd48596 100644
|
|
12
12
|
--- a/gypfiles/standalone.gypi
|
|
13
13
|
+++ b/gypfiles/standalone.gypi
|
|
14
|
-
@@ -
|
|
14
|
+
@@ -797,7 +797,7 @@
|
|
15
15
|
[ 'visibility=="hidden" and v8_enable_backtrace==0', {
|
|
16
16
|
'cflags': [ '-fvisibility=hidden' ],
|
|
17
17
|
}],
|
|
@@ -21,5 +21,5 @@ index 6a72a23cfb..fdf27226ad 100644
|
|
|
21
21
|
}],
|
|
22
22
|
[ 'clang==0 and coverage==1', {
|
|
23
23
|
--
|
|
24
|
-
2.
|
|
24
|
+
2.14.3
|
|
25
25
|
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
From
|
|
1
|
+
From b06fb098489c375a4499fb6a62c92a32a0b282d8 Mon Sep 17 00:00:00 2001
|
|
2
2
|
From: Jb Aviat <jb@sqreen.io>
|
|
3
3
|
Date: Mon, 27 Feb 2017 11:14:42 +0200
|
|
4
4
|
Subject: [PATCH 4/5] Do not embed debug symbols in macOS libraries
|
|
@@ -9,10 +9,10 @@ This lowers dramatically the produced binary size
|
|
|
9
9
|
1 file changed, 1 insertion(+)
|
|
10
10
|
|
|
11
11
|
diff --git a/gypfiles/standalone.gypi b/gypfiles/standalone.gypi
|
|
12
|
-
index
|
|
12
|
+
index f01bd48596..25ca6b8606 100644
|
|
13
13
|
--- a/gypfiles/standalone.gypi
|
|
14
14
|
+++ b/gypfiles/standalone.gypi
|
|
15
|
-
@@ -
|
|
15
|
+
@@ -1056,6 +1056,7 @@
|
|
16
16
|
'GCC_ENABLE_CPP_EXCEPTIONS': 'NO', # -fno-exceptions
|
|
17
17
|
'GCC_ENABLE_CPP_RTTI': 'NO', # -fno-rtti
|
|
18
18
|
'GCC_ENABLE_PASCAL_STRINGS': 'NO', # No -mpascal-strings
|
|
@@ -21,5 +21,5 @@ index fdf27226ad..8c2972fe54 100644
|
|
|
21
21
|
'GCC_INLINES_ARE_PRIVATE_EXTERN': 'YES',
|
|
22
22
|
'GCC_SYMBOLS_PRIVATE_EXTERN': 'YES', # -fvisibility=hidden
|
|
23
23
|
--
|
|
24
|
-
2.
|
|
24
|
+
2.14.3
|
|
25
25
|
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
From dae2970a6e2f4ac30a1deee21562ac00cce3794a Mon Sep 17 00:00:00 2001
|
|
2
|
+
From: Tobias Tebbi <tebbi@chromium.org>
|
|
3
|
+
Date: Tue, 10 Oct 2017 22:39:41 +0200
|
|
4
|
+
Subject: [PATCH 5/5] avoid constructor inheritance due to compilation issues
|
|
5
|
+
|
|
6
|
+
Constructor inheritance of a templated constructor is causing compilation issues for node.js:
|
|
7
|
+
|
|
8
|
+
https: //github.com/nodejs/node/pull/15362#issue-257007421
|
|
9
|
+
Change-Id: I7d099ff5a1a2fd5b19c11112ddef8fe824e509f7
|
|
10
|
+
Reviewed-on: https://chromium-review.googlesource.com/707008
|
|
11
|
+
Commit-Queue: Tobias Tebbi <tebbi@chromium.org>
|
|
12
|
+
Commit-Queue: Benedikt Meurer <bmeurer@chromium.org>
|
|
13
|
+
Reviewed-by: Benedikt Meurer <bmeurer@chromium.org>
|
|
14
|
+
Cr-Commit-Position: refs/heads/master@{#48445}
|
|
15
|
+
---
|
|
16
|
+
src/compiler/common-operator.cc | 4 ++--
|
|
17
|
+
src/compiler/common-operator.h | 12 ++++++++----
|
|
18
|
+
2 files changed, 10 insertions(+), 6 deletions(-)
|
|
19
|
+
|
|
20
|
+
diff --git a/src/compiler/common-operator.cc b/src/compiler/common-operator.cc
|
|
21
|
+
index c48773920d..d92722f701 100644
|
|
22
|
+
--- a/src/compiler/common-operator.cc
|
|
23
|
+
+++ b/src/compiler/common-operator.cc
|
|
24
|
+
@@ -1255,7 +1255,7 @@ bool IsRestOf(Operator const* op) {
|
|
25
|
+
return OpParameter<bool>(op);
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
-const Operator* CommonOperatorBuilder::ObjectState(int object_id,
|
|
29
|
+
+const Operator* CommonOperatorBuilder::ObjectState(uint32_t object_id,
|
|
30
|
+
int pointer_slots) {
|
|
31
|
+
return new (zone()) Operator1<ObjectStateInfo>( // --
|
|
32
|
+
IrOpcode::kObjectState, Operator::kPure, // opcode
|
|
33
|
+
@@ -1265,7 +1265,7 @@ const Operator* CommonOperatorBuilder::ObjectState(int object_id,
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
const Operator* CommonOperatorBuilder::TypedObjectState(
|
|
37
|
+
- int object_id, const ZoneVector<MachineType>* types) {
|
|
38
|
+
+ uint32_t object_id, const ZoneVector<MachineType>* types) {
|
|
39
|
+
return new (zone()) Operator1<TypedObjectStateInfo>( // --
|
|
40
|
+
IrOpcode::kTypedObjectState, Operator::kPure, // opcode
|
|
41
|
+
"TypedObjectState", // name
|
|
42
|
+
diff --git a/src/compiler/common-operator.h b/src/compiler/common-operator.h
|
|
43
|
+
index f7638a3cca..9dfb059518 100644
|
|
44
|
+
--- a/src/compiler/common-operator.h
|
|
45
|
+
+++ b/src/compiler/common-operator.h
|
|
46
|
+
@@ -125,7 +125,8 @@ V8_EXPORT_PRIVATE int ParameterIndexOf(const Operator* const);
|
|
47
|
+
const ParameterInfo& ParameterInfoOf(const Operator* const);
|
|
48
|
+
|
|
49
|
+
struct ObjectStateInfo final : std::pair<uint32_t, int> {
|
|
50
|
+
- using std::pair<uint32_t, int>::pair;
|
|
51
|
+
+ ObjectStateInfo(uint32_t object_id, int size)
|
|
52
|
+
+ : std::pair<uint32_t, int>(object_id, size) {}
|
|
53
|
+
uint32_t object_id() const { return first; }
|
|
54
|
+
int size() const { return second; }
|
|
55
|
+
};
|
|
56
|
+
@@ -134,7 +135,10 @@ size_t hash_value(ObjectStateInfo const& p);
|
|
57
|
+
|
|
58
|
+
struct TypedObjectStateInfo final
|
|
59
|
+
: std::pair<uint32_t, const ZoneVector<MachineType>*> {
|
|
60
|
+
- using std::pair<uint32_t, const ZoneVector<MachineType>*>::pair;
|
|
61
|
+
+ TypedObjectStateInfo(uint32_t object_id,
|
|
62
|
+
+ const ZoneVector<MachineType>* machine_types)
|
|
63
|
+
+ : std::pair<uint32_t, const ZoneVector<MachineType>*>(object_id,
|
|
64
|
+
+ machine_types) {}
|
|
65
|
+
uint32_t object_id() const { return first; }
|
|
66
|
+
const ZoneVector<MachineType>* machine_types() const { return second; }
|
|
67
|
+
};
|
|
68
|
+
@@ -385,8 +389,8 @@ class V8_EXPORT_PRIVATE CommonOperatorBuilder final
|
|
69
|
+
SparseInputMask bitmask);
|
|
70
|
+
const Operator* ArgumentsElementsState(bool is_rest);
|
|
71
|
+
const Operator* ArgumentsLengthState(bool is_rest);
|
|
72
|
+
- const Operator* ObjectState(int object_id, int pointer_slots);
|
|
73
|
+
- const Operator* TypedObjectState(int object_id,
|
|
74
|
+
+ const Operator* ObjectState(uint32_t object_id, int pointer_slots);
|
|
75
|
+
+ const Operator* TypedObjectState(uint32_t object_id,
|
|
76
|
+
const ZoneVector<MachineType>* types);
|
|
77
|
+
const Operator* FrameState(BailoutId bailout_id,
|
|
78
|
+
OutputFrameStateCombine state_combine,
|
|
79
|
+
--
|
|
80
|
+
2.14.3
|
|
81
|
+
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
From f7b393110c0bc58f4fde7589397b5f931a18ea4b Mon Sep 17 00:00:00 2001
|
|
2
|
+
From: Pierre Langlois <pierre.langlois@arm.com>
|
|
3
|
+
Date: Tue, 07 Nov 2017 14:26:17 +0000
|
|
4
|
+
Subject: [PATCH] Arm64: Fix host architecture detection
|
|
5
|
+
|
|
6
|
+
This allows the install-sysroot.py script to run as a hook on an Arm64
|
|
7
|
+
platform. This was tested in v8 and allows us to run `gclient sync` natively.
|
|
8
|
+
|
|
9
|
+
Bug: v8:5075
|
|
10
|
+
Change-Id: Ie2f11a5a6e30973be7ab4ef032abb8c3c7e9591b
|
|
11
|
+
Reviewed-on: https://chromium-review.googlesource.com/756704
|
|
12
|
+
Reviewed-by: John Budorick <jbudorick@chromium.org>
|
|
13
|
+
Commit-Queue: John Budorick <jbudorick@chromium.org>
|
|
14
|
+
Cr-Commit-Position: refs/heads/master@{#514463}
|
|
15
|
+
---
|
|
16
|
+
|
|
17
|
+
diff --git a/build/detect_host_arch.py b/build/detect_host_arch.py
|
|
18
|
+
index 8d6a1ba..0e491bc 100755
|
|
19
|
+
--- a/build/detect_host_arch.py
|
|
20
|
+
+++ b/build/detect_host_arch.py
|
|
21
|
+
@@ -21,6 +21,8 @@
|
|
22
|
+
host_arch = 'x64'
|
|
23
|
+
elif host_arch.startswith('arm'):
|
|
24
|
+
host_arch = 'arm'
|
|
25
|
+
+ elif host_arch.startswith('aarch64'):
|
|
26
|
+
+ host_arch = 'arm64'
|
|
27
|
+
elif host_arch.startswith('mips'):
|
|
28
|
+
host_arch = 'mips'
|
|
29
|
+
elif host_arch.startswith('ppc'):
|
|
30
|
+
@@ -35,6 +37,8 @@
|
|
31
|
+
# the python binary.
|
|
32
|
+
if host_arch == 'x64' and platform.architecture()[0] == '32bit':
|
|
33
|
+
host_arch = 'ia32'
|
|
34
|
+
+ if host_arch == 'arm64' and platform.architecture()[0] == '32bit':
|
|
35
|
+
+ host_arch = 'arm'
|
|
36
|
+
|
|
37
|
+
return host_arch
|
data/vendor/depot_tools/OWNERS
CHANGED
data/vendor/depot_tools/auth.py
CHANGED
|
@@ -16,6 +16,7 @@ import os
|
|
|
16
16
|
import socket
|
|
17
17
|
import sys
|
|
18
18
|
import threading
|
|
19
|
+
import time
|
|
19
20
|
import urllib
|
|
20
21
|
import urlparse
|
|
21
22
|
import webbrowser
|
|
@@ -102,6 +103,125 @@ class LoginRequiredError(AuthenticationError):
|
|
|
102
103
|
super(LoginRequiredError, self).__init__(msg)
|
|
103
104
|
|
|
104
105
|
|
|
106
|
+
class LuciContextAuthError(Exception):
|
|
107
|
+
"""Raised on errors related to unsuccessful attempts to load LUCI_CONTEXT"""
|
|
108
|
+
|
|
109
|
+
|
|
110
|
+
def get_luci_context_access_token():
|
|
111
|
+
"""Returns a valid AccessToken from the local LUCI context auth server.
|
|
112
|
+
|
|
113
|
+
Adapted from
|
|
114
|
+
https://chromium.googlesource.com/infra/luci/luci-py/+/master/client/libs/luci_context/luci_context.py
|
|
115
|
+
See the link above for more details.
|
|
116
|
+
|
|
117
|
+
Returns:
|
|
118
|
+
AccessToken if LUCI_CONTEXT is present and attempt to load it is successful.
|
|
119
|
+
None if LUCI_CONTEXT is absent.
|
|
120
|
+
|
|
121
|
+
Raises:
|
|
122
|
+
LuciContextAuthError if the attempt to load LUCI_CONTEXT
|
|
123
|
+
and request its access token is unsuccessful.
|
|
124
|
+
"""
|
|
125
|
+
return _get_luci_context_access_token(os.environ, datetime.datetime.utcnow())
|
|
126
|
+
|
|
127
|
+
|
|
128
|
+
def _get_luci_context_access_token(env, now):
|
|
129
|
+
ctx_path = env.get('LUCI_CONTEXT')
|
|
130
|
+
if not ctx_path:
|
|
131
|
+
return None
|
|
132
|
+
ctx_path = ctx_path.decode(sys.getfilesystemencoding())
|
|
133
|
+
logging.debug('Loading LUCI_CONTEXT: %r', ctx_path)
|
|
134
|
+
|
|
135
|
+
def authErr(msg, *args):
|
|
136
|
+
error_msg = msg % args
|
|
137
|
+
ex = sys.exc_info()[1]
|
|
138
|
+
if not ex:
|
|
139
|
+
logging.error(error_msg)
|
|
140
|
+
raise LuciContextAuthError(error_msg)
|
|
141
|
+
logging.exception(error_msg)
|
|
142
|
+
raise LuciContextAuthError('%s: %s' % (error_msg, ex))
|
|
143
|
+
|
|
144
|
+
try:
|
|
145
|
+
loaded = _load_luci_context(ctx_path)
|
|
146
|
+
except (OSError, IOError, ValueError):
|
|
147
|
+
authErr('Failed to open, read or decode LUCI_CONTEXT')
|
|
148
|
+
try:
|
|
149
|
+
local_auth = loaded.get('local_auth')
|
|
150
|
+
except AttributeError:
|
|
151
|
+
authErr('LUCI_CONTEXT not in proper format')
|
|
152
|
+
# failed to grab local_auth from LUCI context
|
|
153
|
+
if not local_auth:
|
|
154
|
+
logging.debug('local_auth: no local auth found')
|
|
155
|
+
return None
|
|
156
|
+
try:
|
|
157
|
+
account_id = local_auth.get('default_account_id')
|
|
158
|
+
secret = local_auth.get('secret')
|
|
159
|
+
rpc_port = int(local_auth.get('rpc_port'))
|
|
160
|
+
except (AttributeError, ValueError):
|
|
161
|
+
authErr('local_auth: unexpected local auth format')
|
|
162
|
+
|
|
163
|
+
if not secret:
|
|
164
|
+
authErr('local_auth: no secret returned')
|
|
165
|
+
# if account_id not specified, LUCI_CONTEXT should not be picked up
|
|
166
|
+
if not account_id:
|
|
167
|
+
return None
|
|
168
|
+
|
|
169
|
+
logging.debug('local_auth: requesting an access token for account "%s"',
|
|
170
|
+
account_id)
|
|
171
|
+
http = httplib2.Http()
|
|
172
|
+
host = '127.0.0.1:%d' % rpc_port
|
|
173
|
+
resp, content = http.request(
|
|
174
|
+
uri='http://%s/rpc/LuciLocalAuthService.GetOAuthToken' % host,
|
|
175
|
+
method='POST',
|
|
176
|
+
body=json.dumps({
|
|
177
|
+
'account_id': account_id,
|
|
178
|
+
'scopes': OAUTH_SCOPES.split(' '),
|
|
179
|
+
'secret': secret,
|
|
180
|
+
}),
|
|
181
|
+
headers={'Content-Type': 'application/json'})
|
|
182
|
+
if resp.status != 200:
|
|
183
|
+
err = ('local_auth: Failed to grab access token from '
|
|
184
|
+
'LUCI context server with status %d: %r')
|
|
185
|
+
authErr(err, resp.status, content)
|
|
186
|
+
try:
|
|
187
|
+
token = json.loads(content)
|
|
188
|
+
error_code = token.get('error_code')
|
|
189
|
+
error_message = token.get('error_message')
|
|
190
|
+
access_token = token.get('access_token')
|
|
191
|
+
expiry = token.get('expiry')
|
|
192
|
+
except (AttributeError, ValueError):
|
|
193
|
+
authErr('local_auth: Unexpected access token response format')
|
|
194
|
+
if error_code:
|
|
195
|
+
authErr('local_auth: Error %d in retrieving access token: %s',
|
|
196
|
+
error_code, error_message)
|
|
197
|
+
if not access_token:
|
|
198
|
+
authErr('local_auth: No access token returned from LUCI context server')
|
|
199
|
+
expiry_dt = None
|
|
200
|
+
if expiry:
|
|
201
|
+
try:
|
|
202
|
+
expiry_dt = datetime.datetime.utcfromtimestamp(expiry)
|
|
203
|
+
logging.debug(
|
|
204
|
+
'local_auth: got an access token for '
|
|
205
|
+
'account "%s" that expires in %d sec',
|
|
206
|
+
account_id, (expiry_dt - now).total_seconds())
|
|
207
|
+
except (TypeError, ValueError):
|
|
208
|
+
authErr('Invalid expiry in returned token')
|
|
209
|
+
else:
|
|
210
|
+
logging.debug(
|
|
211
|
+
'local auth: got an access token for '
|
|
212
|
+
'account "%s" that does not expire',
|
|
213
|
+
account_id)
|
|
214
|
+
access_token = AccessToken(access_token, expiry_dt)
|
|
215
|
+
if _needs_refresh(access_token, now=now):
|
|
216
|
+
authErr('local_auth: the returned access token needs to be refreshed')
|
|
217
|
+
return access_token
|
|
218
|
+
|
|
219
|
+
|
|
220
|
+
def _load_luci_context(ctx_path):
|
|
221
|
+
with open(ctx_path) as f:
|
|
222
|
+
return json.load(f)
|
|
223
|
+
|
|
224
|
+
|
|
105
225
|
def make_auth_config(
|
|
106
226
|
use_oauth2=None,
|
|
107
227
|
save_cookies=None,
|
|
@@ -219,6 +339,9 @@ def get_authenticator_for_host(hostname, config):
|
|
|
219
339
|
|
|
220
340
|
Returns:
|
|
221
341
|
Authenticator object.
|
|
342
|
+
|
|
343
|
+
Raises:
|
|
344
|
+
AuthenticationError if hostname is invalid.
|
|
222
345
|
"""
|
|
223
346
|
hostname = hostname.lower().rstrip('/')
|
|
224
347
|
# Append some scheme, otherwise urlparse puts hostname into parsed.path.
|
|
@@ -303,23 +426,43 @@ class Authenticator(object):
|
|
|
303
426
|
with self._lock:
|
|
304
427
|
return bool(self._get_cached_credentials())
|
|
305
428
|
|
|
306
|
-
def get_access_token(self, force_refresh=False, allow_user_interaction=False
|
|
429
|
+
def get_access_token(self, force_refresh=False, allow_user_interaction=False,
|
|
430
|
+
use_local_auth=True):
|
|
307
431
|
"""Returns AccessToken, refreshing it if necessary.
|
|
308
432
|
|
|
309
433
|
Args:
|
|
310
434
|
force_refresh: forcefully refresh access token even if it is not expired.
|
|
311
435
|
allow_user_interaction: True to enable blocking for user input if needed.
|
|
436
|
+
use_local_auth: default to local auth if needed.
|
|
312
437
|
|
|
313
438
|
Raises:
|
|
314
439
|
AuthenticationError on error or if authentication flow was interrupted.
|
|
315
440
|
LoginRequiredError if user interaction is required, but
|
|
316
441
|
allow_user_interaction is False.
|
|
317
442
|
"""
|
|
443
|
+
def get_loc_auth_tkn():
|
|
444
|
+
exi = sys.exc_info()
|
|
445
|
+
if not use_local_auth:
|
|
446
|
+
logging.error('Failed to create access token')
|
|
447
|
+
raise
|
|
448
|
+
try:
|
|
449
|
+
self._access_token = get_luci_context_access_token()
|
|
450
|
+
if not self._access_token:
|
|
451
|
+
logging.error('Failed to create access token')
|
|
452
|
+
raise
|
|
453
|
+
return self._access_token
|
|
454
|
+
except LuciContextAuthError:
|
|
455
|
+
logging.exception('Failed to use local auth')
|
|
456
|
+
raise exi[0], exi[1], exi[2]
|
|
457
|
+
|
|
318
458
|
with self._lock:
|
|
319
459
|
if force_refresh:
|
|
320
460
|
logging.debug('Forcing access token refresh')
|
|
321
|
-
|
|
322
|
-
|
|
461
|
+
try:
|
|
462
|
+
self._access_token = self._create_access_token(allow_user_interaction)
|
|
463
|
+
return self._access_token
|
|
464
|
+
except LoginRequiredError:
|
|
465
|
+
return get_loc_auth_tkn()
|
|
323
466
|
|
|
324
467
|
# Load from on-disk cache on a first access.
|
|
325
468
|
if not self._access_token:
|
|
@@ -331,7 +474,11 @@ class Authenticator(object):
|
|
|
331
474
|
self._access_token = self._load_access_token()
|
|
332
475
|
# Nope, still expired, need to run the refresh flow.
|
|
333
476
|
if not self._access_token or _needs_refresh(self._access_token):
|
|
334
|
-
|
|
477
|
+
try:
|
|
478
|
+
self._access_token = self._create_access_token(
|
|
479
|
+
allow_user_interaction)
|
|
480
|
+
except LoginRequiredError:
|
|
481
|
+
get_loc_auth_tkn()
|
|
335
482
|
|
|
336
483
|
return self._access_token
|
|
337
484
|
|
|
@@ -548,11 +695,12 @@ def _read_refresh_token_json(path):
|
|
|
548
695
|
'Failed to read refresh token from %s: missing key %s' % (path, e))
|
|
549
696
|
|
|
550
697
|
|
|
551
|
-
def _needs_refresh(access_token):
|
|
698
|
+
def _needs_refresh(access_token, now=None):
|
|
552
699
|
"""True if AccessToken should be refreshed."""
|
|
553
700
|
if access_token.expires_at is not None:
|
|
701
|
+
now = now or datetime.datetime.utcnow()
|
|
554
702
|
# Allow 5 min of clock skew between client and backend.
|
|
555
|
-
now
|
|
703
|
+
now += datetime.timedelta(seconds=300)
|
|
556
704
|
return now >= access_token.expires_at
|
|
557
705
|
# Token without expiration time never expires.
|
|
558
706
|
return False
|