chore: bump chromium to 90.0.4415.0 (master) (#27694)

* chore: bump chromium in DEPS to 520c02b46668fc608927e0fcd79b6a90885a48bf

* chore: bump chromium in DEPS to 90.0.4414.0

* resolve chromium conflicts

* resolve v8 conflicts

* fix node gn files

* 2673502: Remove RenderViewCreated use from ExtensionHost.

2673502

* 2676903: [mojo] Remove most legacy Binding classes.

2676903

* 2644847: Move self-deleting URLLoaderFactory base into //services/network.

2644847

* 2664006: Remove from mojo::DataPipe.

2664006

* 2674530: Remove CertVerifierService feature

2674530

* 2668748: Move OnSSLCertificateError to a new interface.

2668748

* 2672923: Remove RAPPOR reporting infrastructure.

2672923

* 2673502: Remove RenderViewCreated use from ExtensionHost.

2673502

* 2655126: Convert FrameHostMsg_ContextMenu and FrameMsg_ContextMenuClosed|CustomContextMenuAction to Mojo

2655126

* 2628705: Window Placement: Implement screen.isExtended and change event

2628705

* 2643161: Refactor storage::kFileSystem*Native*

2643161

* fix build

* only remove the biggest subdir of //ios

* chore: bump chromium in DEPS to 90.0.4415.0

* update patches

* update sysroots

* 2686147: Remove WebContentsObserver::RenderViewCreated().

2686147

* 2596429: Fixing how extension's split and spanning modes affect OriginAccessList.

2596429

* 2686026: [mojo] Delete AssociatedInterfacePtr (replaced by AssociatedRemote)

2686026

* 2651705: Move ui/base/dragdrop/file_info to ui/base/clipboard

2651705

* 358217: drawBitmap is deprecated

https://skia-review.googlesource.com/c/skia/+/358217

* fix gn check

* 2678098: Use gen/front_end as input to generate_devtools_grd

2678098

* 2674530: Remove CertVerifierService feature

2674530

* fixup 2664006: Remove from mojo::DataPipe.

  2664006

* fixup build_add_electron_tracing_category.patch

* 2673415: [base] Prepare CrashReporterClient for string16 switch

2673415

* 2673413: Add CursorFactoryWin to handle Cursors on Windows

2673413

* 2668748: Move OnSSLCertificateError to a new interface.

2668748

* fix mas gn check

* update patch after merge

* Update node for .mjs files

* build: load v8_prof_processor dependencies as ESM

* chore: add patch to fix linux 32bit

Co-authored-by: Jeremy Rose <nornagon@nornagon.net>
Co-authored-by: Jeremy Rose <jeremya@chromium.org>
Co-authored-by: John Kleinschmidt <jkleinsc@electronjs.org>
Co-authored-by: Shelley Vohr <shelley.vohr@gmail.com>
Co-authored-by: Samuel Attard <samuel.r.attard@gmail.com>
This commit is contained in:
Electron Bot 2021-03-04 09:27:05 -08:00 committed by GitHub
parent 0b042d3b1c
commit ca75bca667
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
119 changed files with 746 additions and 633 deletions

View file

@ -7,4 +7,3 @@ workaround_an_undefined_symbol_error.patch
do_not_export_private_v8_symbols_on_windows.patch
fix_build_deprecated_attirbute_for_older_msvc_versions.patch
chore_disallow_copying_cppheapcreateparams.patch
mac_wasm_work_around_macos_11_2_code_page_decommit_failures.patch

View file

@ -12,10 +12,10 @@ when we override ReallocateBufferMemory, so we therefore need to implement
Realloc on the v8 side.
diff --git a/include/v8.h b/include/v8.h
index f292758e8f93d9b00eefe0d80b7891ffec96777b..f98795e3e211875a0930f3ffec8405af9c8bc535 100644
index 63bd969ed6f83f8728a2cbb4479e269d1e3ffbc0..0d79c72077d05c69312d527b0e23b68f85a7cfd7 100644
--- a/include/v8.h
+++ b/include/v8.h
@@ -5296,6 +5296,13 @@ class V8_EXPORT ArrayBuffer : public Object {
@@ -5295,6 +5295,13 @@ class V8_EXPORT ArrayBuffer : public Object {
*/
virtual void* AllocateUninitialized(size_t length) = 0;
@ -30,10 +30,10 @@ index f292758e8f93d9b00eefe0d80b7891ffec96777b..f98795e3e211875a0930f3ffec8405af
* Free the memory block of size |length|, pointed to by |data|.
* That memory is guaranteed to be previously allocated by |Allocate|.
diff --git a/src/api/api.cc b/src/api/api.cc
index 3656bc689df8516283717db1165d4f4c01b4f1bf..f8c1dc45f36b87c3cf1339cec2528e267113e0b7 100644
index 1107b70b672d783b479a28f7a66afb10959e41d8..3e00ce21aeba97372b0b849ecc47e1e9a5b3c804 100644
--- a/src/api/api.cc
+++ b/src/api/api.cc
@@ -547,6 +547,10 @@ void V8::SetSnapshotDataBlob(StartupData* snapshot_blob) {
@@ -313,6 +313,10 @@ void V8::SetSnapshotDataBlob(StartupData* snapshot_blob) {
i::V8::SetSnapshotBlob(snapshot_blob);
}

View file

@ -9,10 +9,10 @@ necessary for native modules to load.
Also, some fixes relating to mksnapshot on ARM.
diff --git a/BUILD.gn b/BUILD.gn
index 0c7841f6bf68d4836a6798c3bce4f70c903f04c6..8c6b1a5c0c6f86dd5e9d332d90811ad459cbae81 100644
index 2b6029fd109844fc140c6576a19c621f812bea93..54a421d6541a3811b7a6e24cd4ac55fa1c1d7a1a 100644
--- a/BUILD.gn
+++ b/BUILD.gn
@@ -435,7 +435,7 @@ config("internal_config") {
@@ -441,7 +441,7 @@ config("internal_config") {
":cppgc_header_features",
]
@ -21,7 +21,7 @@ index 0c7841f6bf68d4836a6798c3bce4f70c903f04c6..8c6b1a5c0c6f86dd5e9d332d90811ad4
defines += [ "BUILDING_V8_SHARED" ]
}
}
@@ -4785,7 +4785,7 @@ if (current_toolchain == v8_generator_toolchain) {
@@ -4877,7 +4877,7 @@ if (current_toolchain == v8_generator_toolchain) {
"src/interpreter/bytecodes.h",
]
@ -30,7 +30,7 @@ index 0c7841f6bf68d4836a6798c3bce4f70c903f04c6..8c6b1a5c0c6f86dd5e9d332d90811ad4
deps = [
":v8_libbase",
@@ -4822,6 +4822,8 @@ if (current_toolchain == v8_snapshot_toolchain) {
@@ -4914,6 +4914,8 @@ if (current_toolchain == v8_snapshot_toolchain) {
configs = [ ":internal_config" ]

View file

@ -11,10 +11,10 @@ implicitly deletes its copy ctor, so this commit makes it explicit.
Xref: https://chromium-review.googlesource.com/c/v8/v8/+/2536642
diff --git a/include/v8-cppgc.h b/include/v8-cppgc.h
index 33e06f4495979eab3fa1e0ac7af3e0b306254446..08e63751fcd2fe590299b0708b19e9c741bd3e40 100644
index 8860ea8a78de67ab9e9ac453ec1774c8c6b17b8a..1ae9c485bbf083449d7e812696975ffef5e37573 100644
--- a/include/v8-cppgc.h
+++ b/include/v8-cppgc.h
@@ -25,8 +25,13 @@ namespace internal {
@@ -26,8 +26,13 @@ namespace internal {
class CppHeap;
} // namespace internal
@ -30,14 +30,13 @@ index 33e06f4495979eab3fa1e0ac7af3e0b306254446..08e63751fcd2fe590299b0708b19e9c7
/**
diff --git a/include/v8.h b/include/v8.h
index f98795e3e211875a0930f3ffec8405af9c8bc535..afa10ecb6b19e97ff7dc4848610611294cd26588 100644
index 0d79c72077d05c69312d527b0e23b68f85a7cfd7..5e03f54a918191650d5dd6768a6e8c3a31de4300 100644
--- a/include/v8.h
+++ b/include/v8.h
@@ -93,7 +93,7 @@ class Utils;
@@ -93,6 +93,7 @@ class Utils;
class Value;
class WasmMemoryObject;
class WasmModuleObject;
-struct CppHeapCreateParams;
+class CppHeapCreateParams;
template <class K, class V, class T>
class GlobalValueMap;

View file

@ -6,10 +6,10 @@ Subject: dcheck.patch
https://github.com/auchenberg/volkswagen
diff --git a/src/api/api.cc b/src/api/api.cc
index f8c1dc45f36b87c3cf1339cec2528e267113e0b7..a2d7272f7da99dbe20c0be24a017ced7729d25d9 100644
index 3e00ce21aeba97372b0b849ecc47e1e9a5b3c804..5c5498a5c0732158bf4f4eb37c7d21231ccac45d 100644
--- a/src/api/api.cc
+++ b/src/api/api.cc
@@ -9025,7 +9025,7 @@ void Isolate::SetPromiseRejectCallback(PromiseRejectCallback callback) {
@@ -8798,7 +8798,7 @@ void Isolate::SetPromiseRejectCallback(PromiseRejectCallback callback) {
}
void Isolate::PerformMicrotaskCheckpoint() {
@ -19,10 +19,10 @@ index f8c1dc45f36b87c3cf1339cec2528e267113e0b7..a2d7272f7da99dbe20c0be24a017ced7
isolate->default_microtask_queue()->PerformCheckpoint(this);
}
diff --git a/src/heap/heap.cc b/src/heap/heap.cc
index 86049c4890848af9b0aae04b4656175ef6a62385..9e20eecf4839ff5638833cf2161a821939308a29 100644
index 23b84296be18f17371ae1aaa3d4389e23963e313..5b53bc8ee05824bab22302e8a731839f3b3f2318 100644
--- a/src/heap/heap.cc
+++ b/src/heap/heap.cc
@@ -5544,9 +5544,9 @@ void Heap::TearDown() {
@@ -5551,9 +5551,9 @@ void Heap::TearDown() {
void Heap::AddGCPrologueCallback(v8::Isolate::GCCallbackWithData callback,
GCType gc_type, void* data) {
DCHECK_NOT_NULL(callback);

View file

@ -12,10 +12,10 @@ This patch can be safely removed if, when it is removed, `node.lib` does not
contain any standard C++ library exports (e.g. `std::ostringstream`).
diff --git a/BUILD.gn b/BUILD.gn
index 5b2a7b672f7360e4edf028c868a3cc7ffb4d2784..83a404d1adfe962fb258d555be278ff21bb1ce92 100644
index 77760d840e62acfd214633108da576f296d32ce8..6d3202f21931cccbd69765d27926b8c92dc9aad1 100644
--- a/BUILD.gn
+++ b/BUILD.gn
@@ -435,6 +435,10 @@ config("internal_config") {
@@ -441,6 +441,10 @@ config("internal_config") {
":cppgc_header_features",
]

View file

@ -6,10 +6,10 @@ Subject: Export symbols needed for Windows build
These symbols are required to build v8 with BUILD_V8_SHARED on Windows.
diff --git a/src/objects/objects.h b/src/objects/objects.h
index a6b6cd2d2445f5247e5ec3d5e1cd41972c1fa278..50f575f3ea3a5a24116fafc9cc60123323f50307 100644
index 73b3369da085f8950d6f92589f93cd80273a57ab..da598f60382f54d30abae1ad30256f998b7b2628 100644
--- a/src/objects/objects.h
+++ b/src/objects/objects.h
@@ -825,7 +825,7 @@ enum class KeyCollectionMode {
@@ -826,7 +826,7 @@ enum class KeyCollectionMode {
// Utility superclass for stack-allocated objects that must be updated
// on gc. It provides two ways for the gc to update instances, either
// iterating or updating after gc.

View file

@ -6,10 +6,10 @@ Subject: expose_mksnapshot.patch
Needed in order to target mksnapshot for mksnapshot zip.
diff --git a/BUILD.gn b/BUILD.gn
index 8c6b1a5c0c6f86dd5e9d332d90811ad459cbae81..5b2a7b672f7360e4edf028c868a3cc7ffb4d2784 100644
index 54a421d6541a3811b7a6e24cd4ac55fa1c1d7a1a..77760d840e62acfd214633108da576f296d32ce8 100644
--- a/BUILD.gn
+++ b/BUILD.gn
@@ -4796,7 +4796,6 @@ if (current_toolchain == v8_generator_toolchain) {
@@ -4888,7 +4888,6 @@ if (current_toolchain == v8_generator_toolchain) {
if (current_toolchain == v8_snapshot_toolchain) {
v8_executable("mksnapshot") {

View file

@ -1,42 +0,0 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: deepak1556 <hop2deep@gmail.com>
Date: Mon, 8 Feb 2021 13:20:09 -0800
Subject: Work around MacOS 11.2 code page decommit failures
MacOS 11.2 refuses to set "no access" permissions on memory that
we previously used for JIT-compiled code. It is still unclear
whether this is WAI on the part of the kernel. In the meantime,
as a workaround, we use madvise(..., MADV_FREE_REUSABLE) instead
of mprotect(..., NONE) when discarding code pages. This is inspired
by what Chromium's gin platform does.
Fixed: v8:11389
Change-Id: I866586932573b4253002436ae5eee4e0411c45fc
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2679688
Commit-Queue: Jakob Kummerow <jkummerow@chromium.org>
Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
Auto-Submit: Jakob Kummerow <jkummerow@chromium.org>
Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
Cr-Commit-Position: refs/heads/master@{#72559}
diff --git a/src/base/platform/platform-posix.cc b/src/base/platform/platform-posix.cc
index ab0d7839a453d87a8404ca791c1022871e8fd606..67746173d582c5c404083be8ef3fa36c7dfc8cfe 100644
--- a/src/base/platform/platform-posix.cc
+++ b/src/base/platform/platform-posix.cc
@@ -415,6 +415,16 @@ bool OS::SetPermissions(void* address, size_t size, MemoryPermission access) {
int prot = GetProtectionFromMemoryPermission(access);
int ret = mprotect(address, size, prot);
+
+ // MacOS 11.2 on Apple Silicon refuses to switch permissions from
+ // rwx to none. Just use madvise instead.
+#if defined(V8_OS_MACOSX)
+ if (ret != 0 && access == OS::MemoryPermission::kNoAccess) {
+ ret = madvise(address, size, MADV_FREE_REUSABLE);
+ return ret == 0;
+ }
+#endif
+
if (ret == 0 && access == OS::MemoryPermission::kNoAccess) {
// This is advisory; ignore errors and continue execution.
USE(DiscardSystemPages(address, size));

View file

@ -12,10 +12,10 @@ By moving some functions out of the the arm64-assembler header file,
this error no longer seems to happen.
diff --git a/src/codegen/arm64/assembler-arm64.cc b/src/codegen/arm64/assembler-arm64.cc
index 8a44d21428b047eed73e0cf405c5064a0649b8cf..495c950b6cf725f4c4287e204d601ce178dc825d 100644
index 441f299a17a6f870f545dbcd2c28a5e49b952ac3..79249d463c8fe7d73caca6b36ed6033b3c363c67 100644
--- a/src/codegen/arm64/assembler-arm64.cc
+++ b/src/codegen/arm64/assembler-arm64.cc
@@ -3653,6 +3653,22 @@ void Assembler::MoveWide(const Register& rd, uint64_t imm, int shift,
@@ -3658,6 +3658,22 @@ void Assembler::MoveWide(const Register& rd, uint64_t imm, int shift,
ImmMoveWide(static_cast<int>(imm)) | ShiftMoveWide(shift));
}