Skip to content

Commit

Permalink
Update to v8 11.4.183.8
Browse files Browse the repository at this point in the history
Test: bazel test //...
  • Loading branch information
ohodson committed May 21, 2023
1 parent 2d124ec commit 512922b
Show file tree
Hide file tree
Showing 9 changed files with 107 additions and 100 deletions.
6 changes: 3 additions & 3 deletions WORKSPACE
Original file line number Diff line number Diff line change
Expand Up @@ -263,7 +263,7 @@ npm_repositories()
git_repository(
name = "v8",
remote = "https://chromium.googlesource.com/v8/v8.git",
commit = "96fed67922e5f54a027aed80259e5083769e33e2",
commit = "ca96c940fe41670a2e1b7d56ad7ced67ce3528d1",
shallow_since = "1679318470 +0000",
patch_args = [ "-p1" ],
patches = [
Expand All @@ -274,14 +274,14 @@ git_repository(
"//:patches/v8/0005-Allow-compiling-on-macOS-catalina-and-ventura.patch",
"//:patches/v8/0006-Fix-v8-code_generator-imports.patch",
"//:patches/v8/0007-Allow-Windows-builds-under-Bazel.patch",
"//:patches/v8/0008-Disable-bazel-whole-archive.patch",
"//:patches/v8/0008-Disable-bazel-whole-archive-build.patch",
],
)

new_git_repository(
name = "com_googlesource_chromium_icu",
remote = "https://chromium.googlesource.com/chromium/deps/icu.git",
commit = "c6b68522318204f795a8f04caebf6c0beb679cc4",
commit = "d8daa943f64cd5dd2a55e9baf2e655ab4bfa5ae9",
shallow_since = "1676561136 +0000",
build_file = "@v8//:bazel/BUILD.icu",
patch_cmds = [ "find source -name BUILD.bazel | xargs rm" ],
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From 37f5892ec712f374124afbea8b45414c61193917 Mon Sep 17 00:00:00 2001
From: Alex Robinson <[email protected]>
Date: Wed, 2 Mar 2022 15:58:04 -0600
Subject: Allow manually setting ValueDeserializer format version
Expand All @@ -15,12 +15,17 @@ like:
deserializer.SetWireFormatVersion(13);
}
auto maybeValue = deserializer.ReadValue(isolate->GetCurrentContext());
---
include/v8-value-serializer.h | 7 +++++++
src/api/api.cc | 4 ++++
src/objects/value-serializer.h | 7 +++++++
3 files changed, 18 insertions(+)

diff --git a/include/v8-value-serializer.h b/include/v8-value-serializer.h
index 729730c608dbe4559687d5e91e15d91d2ddf3e77..439868401726a6424de76b6da1a70cd9fa017f00 100644
index 0cb3e045bc..40ad805c79 100644
--- a/include/v8-value-serializer.h
+++ b/include/v8-value-serializer.h
@@ -279,6 +279,13 @@ class V8_EXPORT ValueDeserializer {
@@ -293,6 +293,13 @@ class V8_EXPORT ValueDeserializer {
*/
uint32_t GetWireFormatVersion() const;

Expand All @@ -35,10 +40,10 @@ index 729730c608dbe4559687d5e91e15d91d2ddf3e77..439868401726a6424de76b6da1a70cd9
* Reads raw data in various common formats to the buffer.
* Note that integer types are read in base-128 varint format, not with a
diff --git a/src/api/api.cc b/src/api/api.cc
index b425d61ce31d54d291d04f40f59e4ff9ce95588e..2993e69558c48e6ea0d87a6f7c1f392a822df6e2 100644
index 94b44c14c3..729dc91451 100644
--- a/src/api/api.cc
+++ b/src/api/api.cc
@@ -3698,6 +3698,10 @@ uint32_t ValueDeserializer::GetWireFormatVersion() const {
@@ -3772,6 +3772,10 @@ uint32_t ValueDeserializer::GetWireFormatVersion() const {
return private_->deserializer.GetWireFormatVersion();
}

Expand All @@ -50,10 +55,10 @@ index b425d61ce31d54d291d04f40f59e4ff9ce95588e..2993e69558c48e6ea0d87a6f7c1f392a
PREPARE_FOR_EXECUTION(context, ValueDeserializer, ReadValue, Value);
i::MaybeHandle<i::Object> result;
diff --git a/src/objects/value-serializer.h b/src/objects/value-serializer.h
index 67a81a3b7c3b11ed6b404ebd7bf23fb4a2a40f40..bd0d77f716a8277a11b224e953c5a8cb926526c5 100644
index f5ccdcbf0a..f3d35e9498 100644
--- a/src/objects/value-serializer.h
+++ b/src/objects/value-serializer.h
@@ -216,6 +216,13 @@ class ValueDeserializer {
@@ -217,6 +217,13 @@ class ValueDeserializer {
*/
uint32_t GetWireFormatVersion() const { return version_; }

Expand Down
Original file line number Diff line number Diff line change
@@ -1,15 +1,21 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From 5143eda0e0e81242653d74dec690b239c2c6a578 Mon Sep 17 00:00:00 2001
From: James M Snell <[email protected]>
Date: Wed, 16 Mar 2022 08:59:21 -0700
Subject: Allow manually setting ValueSerializer format version

Refs: https://bitbucket.cfdata.org/projects/MIRRORS/repos/v8/pull-requests/2/overview
---
include/v8-value-serializer.h | 5 +++++
src/api/api.cc | 4 ++++
src/objects/value-serializer.cc | 17 ++++++++++++++---
src/objects/value-serializer.h | 6 ++++++
4 files changed, 29 insertions(+), 3 deletions(-)

diff --git a/include/v8-value-serializer.h b/include/v8-value-serializer.h
index 439868401726a6424de76b6da1a70cd9fa017f00..7f8693eab1b9eebd48704e14ca0f883db5cf7804 100644
index 40ad805c79..596be18ade 100644
--- a/include/v8-value-serializer.h
+++ b/include/v8-value-serializer.h
@@ -140,6 +140,11 @@ class V8_EXPORT ValueSerializer {
@@ -154,6 +154,11 @@ class V8_EXPORT ValueSerializer {
ValueSerializer(Isolate* isolate, Delegate* delegate);
~ValueSerializer();

Expand All @@ -22,10 +28,10 @@ index 439868401726a6424de76b6da1a70cd9fa017f00..7f8693eab1b9eebd48704e14ca0f883d
* Writes out a header, which includes the format version.
*/
diff --git a/src/api/api.cc b/src/api/api.cc
index 2993e69558c48e6ea0d87a6f7c1f392a822df6e2..19732879ae35695bc8c9226c6622a8e863ab4a83 100644
index 729dc91451..ecddc98f57 100644
--- a/src/api/api.cc
+++ b/src/api/api.cc
@@ -3565,6 +3565,10 @@ ValueSerializer::ValueSerializer(Isolate* v8_isolate, Delegate* delegate)
@@ -3639,6 +3639,10 @@ ValueSerializer::ValueSerializer(Isolate* v8_isolate, Delegate* delegate)

ValueSerializer::~ValueSerializer() { delete private_; }

Expand All @@ -37,18 +43,18 @@ index 2993e69558c48e6ea0d87a6f7c1f392a822df6e2..19732879ae35695bc8c9226c6622a8e8

void ValueSerializer::SetTreatArrayBufferViewsAsHostObjects(bool mode) {
diff --git a/src/objects/value-serializer.cc b/src/objects/value-serializer.cc
index d55c8d7526dcb35674c6620b1fb38c3d6bca92d9..9636ea8533488137c6442edad547e311b55e7558 100644
index 2efca82aaa..c57ff099dc 100644
--- a/src/objects/value-serializer.cc
+++ b/src/objects/value-serializer.cc
@@ -265,6 +265,7 @@ ValueSerializer::ValueSerializer(Isolate* isolate,
@@ -266,6 +266,7 @@ ValueSerializer::ValueSerializer(Isolate* isolate,
: isolate_(isolate),
delegate_(delegate),
zone_(isolate->allocator(), ZONE_NAME),
+ version_(kLatestVersion),
id_map_(isolate->heap(), ZoneAllocationPolicy(&zone_)),
array_buffer_transfer_map_(isolate->heap(),
ZoneAllocationPolicy(&zone_)) {}
@@ -279,9 +280,17 @@ ValueSerializer::~ValueSerializer() {
ZoneAllocationPolicy(&zone_)) {
@@ -285,9 +286,17 @@ ValueSerializer::~ValueSerializer() {
}
}

Expand All @@ -67,7 +73,7 @@ index d55c8d7526dcb35674c6620b1fb38c3d6bca92d9..9636ea8533488137c6442edad547e311
}

void ValueSerializer::SetTreatArrayBufferViewsAsHostObjects(bool mode) {
@@ -991,10 +1000,12 @@ Maybe<bool> ValueSerializer::WriteJSArrayBufferView(JSArrayBufferView view) {
@@ -1004,10 +1013,12 @@ Maybe<bool> ValueSerializer::WriteJSArrayBufferView(JSArrayBufferView view) {
WriteVarint(static_cast<uint8_t>(tag));
WriteVarint(static_cast<uint32_t>(view.byte_offset()));
WriteVarint(static_cast<uint32_t>(view.byte_length()));
Expand All @@ -83,7 +89,7 @@ index d55c8d7526dcb35674c6620b1fb38c3d6bca92d9..9636ea8533488137c6442edad547e311
}

diff --git a/src/objects/value-serializer.h b/src/objects/value-serializer.h
index bd0d77f716a8277a11b224e953c5a8cb926526c5..32834ea45a8d8dee512b2e4da6fef11cdcbb3930 100644
index f3d35e9498..d3d839ad10 100644
--- a/src/objects/value-serializer.h
+++ b/src/objects/value-serializer.h
@@ -54,6 +54,11 @@ class ValueSerializer {
Expand All @@ -98,7 +104,7 @@ index bd0d77f716a8277a11b224e953c5a8cb926526c5..32834ea45a8d8dee512b2e4da6fef11c
/*
* Writes out a header, which includes the format version.
*/
@@ -177,6 +182,7 @@ class ValueSerializer {
@@ -178,6 +183,7 @@ class ValueSerializer {
bool treat_array_buffer_views_as_host_objects_ = false;
bool out_of_memory_ = false;
Zone zone_;
Expand Down
7 changes: 5 additions & 2 deletions patches/v8/0003-Make-icudata-target-public.patch
Original file line number Diff line number Diff line change
@@ -1,12 +1,15 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From 70f30fc43b5fffd95ff882a16328ad41ecbcece3 Mon Sep 17 00:00:00 2001
From: Kenton Varda <[email protected]>
Date: Sat, 17 Sep 2022 11:11:15 -0500
Subject: Make `:icudata` target public.

Dependencies are required to load this file, so it ought to be exposed for them to use.
---
bazel/BUILD.icu | 1 +
1 file changed, 1 insertion(+)

diff --git a/bazel/BUILD.icu b/bazel/BUILD.icu
index 2ae79a5784f252ab69b58cd47d131aec65d34701..4843ea09f99fa1b45bf66af8fd971adfd89efe45 100644
index 2ae79a5784..4843ea09f9 100644
--- a/bazel/BUILD.icu
+++ b/bazel/BUILD.icu
@@ -5,6 +5,7 @@
Expand Down
7 changes: 5 additions & 2 deletions patches/v8/0004-Add-ArrayBuffer-MaybeNew.patch
Original file line number Diff line number Diff line change
@@ -1,14 +1,17 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From f3a7ba35c5950b3cf12432a319bce04fbd1c1308 Mon Sep 17 00:00:00 2001
From: Kenton Varda <[email protected]>
Date: Fri, 16 Sep 2022 21:41:45 -0500
Subject: Add `ArrayBuffer::MaybeNew()`.

In Cloudflare's edge runtime, this is part of a larger patch that allows graceful handling of allocations that exceed memory limits. `workerd` currently doesn't enforce any limits, so to reduce complexity we just forward to `New()`.

(We would like to upstream our internal patch, just need to find the time...)
---
include/v8-array-buffer.h | 8 ++++++++
1 file changed, 8 insertions(+)

diff --git a/include/v8-array-buffer.h b/include/v8-array-buffer.h
index 804fc42c4b56dd9b79f0fdc49e94c0e101e510e8..369e770351b80c60cae43866139e3a5396de08bd 100644
index 804fc42c4b..369e770351 100644
--- a/include/v8-array-buffer.h
+++ b/include/v8-array-buffer.h
@@ -210,6 +210,14 @@ class V8_EXPORT ArrayBuffer : public Object {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,15 +1,18 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From 0c58281eb7ded742fba5d939d11b699cb3391832 Mon Sep 17 00:00:00 2001
From: Dhi Aurrahman <[email protected]>
Date: Thu, 27 Oct 2022 12:45:05 +0700
Subject: Allow compiling on macOS catalina and ventura

Signed-off-by: Dhi Aurrahman <[email protected]>
---
bazel/defs.bzl | 12 ++++++++++++
1 file changed, 12 insertions(+)

diff --git a/bazel/defs.bzl b/bazel/defs.bzl
index 8c3e3b9d1d9a37679a36c61c1fc03342d7f25587..8053fa95df82eee6c3b2286e56e68129ec3c876f 100644
index 9024b1e14f..459979f163 100644
--- a/bazel/defs.bzl
+++ b/bazel/defs.bzl
@@ -151,6 +151,18 @@ def _default_args():
@@ -156,6 +156,18 @@ def _default_args():
"-fno-integrated-as",
],
"//conditions:default": [],
Expand All @@ -25,6 +28,6 @@ index 8c3e3b9d1d9a37679a36c61c1fc03342d7f25587..8053fa95df82eee6c3b2286e56e68129
+ "-Wno-deprecated-declarations",
+ ],
+ "//conditions:default": [],
}),
cxxopts = select({
"//third_party/v8/HEAD/google3/config:is_opt": [
}) + select({
"@v8//bazel/config:is_opt_android": [
"-fvisibility=hidden",
9 changes: 6 additions & 3 deletions patches/v8/0006-Fix-v8-code_generator-imports.patch
Original file line number Diff line number Diff line change
@@ -1,14 +1,17 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From 8831ef5a2250f102861c0c56bf9f626a7555a8e8 Mon Sep 17 00:00:00 2001
From: Felix Hanau <[email protected]>
Date: Wed, 8 Mar 2023 16:15:31 -0500
Subject: Fix v8 code_generator imports

---
BUILD.bazel | 5 +++++
1 file changed, 5 insertions(+)

diff --git a/BUILD.bazel b/BUILD.bazel
index 9730021294563b213e0e601a98d4b03d1ab9f324..5639f547fab898427fe574ee50eb767e590422df 100644
index 83cb5a4d6b..366312ce07 100644
--- a/BUILD.bazel
+++ b/BUILD.bazel
@@ -3459,6 +3459,11 @@ py_binary(
@@ -3592,6 +3592,11 @@ py_binary(
deps = [
requirement("jinja2"),
],
Expand Down
Loading

0 comments on commit 512922b

Please sign in to comment.