Browse Source

chore: update patches

deepak1556 5 years ago
parent
commit
a21ffa027a
22 changed files with 100 additions and 100 deletions
  1. 1 1
      patches/common/chromium/allow_webview_file_url.patch
  2. 5 5
      patches/common/chromium/can_create_window.patch
  3. 1 1
      patches/common/chromium/cross_site_document_resource_handler.patch
  4. 3 3
      patches/common/chromium/disable_color_correct_rendering.patch
  5. 2 2
      patches/common/chromium/disable_user_gesture_requirement_for_beforeunload_dialogs.patch
  6. 1 1
      patches/common/chromium/frame_host_manager.patch
  7. 10 10
      patches/common/chromium/mas_no_private_api.patch
  8. 2 2
      patches/common/chromium/notification_provenance.patch
  9. 3 3
      patches/common/chromium/resource_file_conflict.patch
  10. 1 1
      patches/common/chromium/support_mixed_sandbox_with_zygote.patch
  11. 6 6
      patches/common/chromium/worker_context_will_destroy.patch
  12. 3 3
      patches/common/v8/add_realloc.patch
  13. 3 3
      patches/common/v8/build_gn.patch
  14. 4 4
      patches/common/v8/dcheck.patch
  15. 15 15
      patches/common/v8/deps_provide_more_v8_backwards_compatibility.patch
  16. 3 3
      patches/common/v8/export_symbols_needed_for_windows_build.patch
  17. 2 2
      patches/common/v8/expose_mksnapshot.patch
  18. 8 8
      patches/common/v8/fixme_revert_heap_api_remove_deprecated_apis.patch
  19. 9 9
      patches/common/v8/revert_api_remove_deprecated_conversion_functions.patch
  20. 6 6
      patches/common/v8/revert_cctest_add_v8_export_private_to_arm_arm64_ports.patch
  21. 11 11
      patches/common/v8/revert_reland_api_heap_remove_deprecated_persistent_apis.patch
  22. 1 1
      patches/common/v8/workaround_an_undefined_symbol_error.patch

+ 1 - 1
patches/common/chromium/allow_webview_file_url.patch

@@ -6,7 +6,7 @@ Subject: allow_webview_file_url.patch
 Allow webview to load non-web URLs.
 
 diff --git a/content/browser/loader/resource_dispatcher_host_impl.cc b/content/browser/loader/resource_dispatcher_host_impl.cc
-index 73c8f135fe2619e1588e7fcd5bc33e4ba7bfdef9..cc2409ee161bcdc7ec5d1db041517ef830dbd06f 100644
+index 934dee87c444429a65f6be2a953a104caa5c1e46..c378fb89eefc5fc9c4500919480e86967c488290 100644
 --- a/content/browser/loader/resource_dispatcher_host_impl.cc
 +++ b/content/browser/loader/resource_dispatcher_host_impl.cc
 @@ -1475,6 +1475,8 @@ void ResourceDispatcherHostImpl::BeginNavigationRequest(

+ 5 - 5
patches/common/chromium/can_create_window.patch

@@ -5,10 +5,10 @@ Subject: can_create_window.patch
 
 
 diff --git a/content/browser/frame_host/render_frame_host_impl.cc b/content/browser/frame_host/render_frame_host_impl.cc
-index 1825213f403d4a33269e7d4c120b7741aefd473b..deda22614fd891eef450e0f6a948cc645431fc04 100644
+index e3b6bc9ab2b12493daddad8471ac48eb15f878e3..880b8eabb4227c93cf1f920b364709aa64e53bc6 100644
 --- a/content/browser/frame_host/render_frame_host_impl.cc
 +++ b/content/browser/frame_host/render_frame_host_impl.cc
-@@ -3725,6 +3725,7 @@ void RenderFrameHostImpl::CreateNewWindow(
+@@ -3722,6 +3722,7 @@ void RenderFrameHostImpl::CreateNewWindow(
            last_committed_origin_, params->window_container_type,
            params->target_url, params->referrer.To<Referrer>(),
            params->frame_name, params->disposition, *params->features,
@@ -45,7 +45,7 @@ index da482a1a1638f27a413502d9be16a5fb12e9678c..de19cb3a5f3d6685d8dede7c3cdb5b47
      bool opener_suppressed,
      bool* no_javascript_access) {
 diff --git a/content/public/browser/content_browser_client.h b/content/public/browser/content_browser_client.h
-index 5e79a99f045272846f3840547345adffb991421b..2c722d14437cdad69544e0c67921dbaec15b97da 100644
+index c11897f6a45a8bf1a80bfb727992087b03904412..13342817ac00282bba5089bafb7e3a1ed85f0b0d 100644
 --- a/content/public/browser/content_browser_client.h
 +++ b/content/public/browser/content_browser_client.h
 @@ -175,6 +175,7 @@ class RenderFrameHost;
@@ -56,7 +56,7 @@ index 5e79a99f045272846f3840547345adffb991421b..2c722d14437cdad69544e0c67921dbae
  class SerialDelegate;
  class ServiceManagerConnection;
  class SiteInstance;
-@@ -801,6 +802,8 @@ class CONTENT_EXPORT ContentBrowserClient {
+@@ -802,6 +803,8 @@ class CONTENT_EXPORT ContentBrowserClient {
        const std::string& frame_name,
        WindowOpenDisposition disposition,
        const blink::mojom::WindowFeatures& features,
@@ -66,7 +66,7 @@ index 5e79a99f045272846f3840547345adffb991421b..2c722d14437cdad69544e0c67921dbae
        bool opener_suppressed,
        bool* no_javascript_access);
 diff --git a/content/renderer/render_view_impl.cc b/content/renderer/render_view_impl.cc
-index 25ab2ac5822670c6f912e4b032f280497cb26ec3..8917dbce71a415c60764f52a977c27a6fe8d335e 100644
+index 49e1e5647f700350a07ad88306a06122d0f0f204..39c5ce2a631cc1d78e36dbda506212b87f5a1939 100644
 --- a/content/renderer/render_view_impl.cc
 +++ b/content/renderer/render_view_impl.cc
 @@ -77,6 +77,7 @@

+ 1 - 1
patches/common/chromium/cross_site_document_resource_handler.patch

@@ -37,7 +37,7 @@ index acf458d5c088607d3ceb6d058f28f076bf4cf712..4bdfeefc531b378f33b143ea432aebd6
      const MainFunctionParams& parameters) {
    return nullptr;
 diff --git a/content/public/browser/content_browser_client.h b/content/public/browser/content_browser_client.h
-index 9c7c77b44d279219411ce545c5448acecbd56d59..f99105176cc97e13b5d2b7c470b95e23b404de0a 100644
+index 97ac4f66b6410fbb5596e01ae8152194d4f235c8..54550e2942b176bccafbfde395d9ec4ae9777a4a 100644
 --- a/content/public/browser/content_browser_client.h
 +++ b/content/public/browser/content_browser_client.h
 @@ -241,6 +241,9 @@ class CONTENT_EXPORT ContentBrowserClient {

+ 3 - 3
patches/common/chromium/disable_color_correct_rendering.patch

@@ -215,7 +215,7 @@ index f19bbb46ea6f3962f83d10fb400ae55584a17a9e..c5dff79af54a03ef888e4474e5ea5368
      service_manager::switches::kGpuSandboxAllowSysVShm,
      service_manager::switches::kGpuSandboxFailuresFatal,
 diff --git a/content/browser/renderer_host/render_process_host_impl.cc b/content/browser/renderer_host/render_process_host_impl.cc
-index dffe06fa5262a0b6aebe064f8813b149439cb613..59c8ac411b4525f4a866b16c04c1a37a36aef7d5 100644
+index 982b82ef2b517bd21f05f24efc8e0d78c111d495..4a32760fc4764341d0c3a4d74b8f9fd044c891e9 100644
 --- a/content/browser/renderer_host/render_process_host_impl.cc
 +++ b/content/browser/renderer_host/render_process_host_impl.cc
 @@ -218,6 +218,7 @@
@@ -235,10 +235,10 @@ index dffe06fa5262a0b6aebe064f8813b149439cb613..59c8ac411b4525f4a866b16c04c1a37a
      network::switches::kExplicitlyAllowedPorts,
      service_manager::switches::kDisableInProcessStackTraces,
 diff --git a/content/renderer/render_widget.cc b/content/renderer/render_widget.cc
-index 046e138def4407388c5f668a8e3099c686ad9f9d..b648c09433efe925a098ac94caa797829344a3f6 100644
+index 3efeb92f38e2ec5bb7303fa1c66cbab7dc78671c..b67999f475460bd5bf3caa449d27a508c62e5b20 100644
 --- a/content/renderer/render_widget.cc
 +++ b/content/renderer/render_widget.cc
-@@ -2798,6 +2798,9 @@ cc::LayerTreeSettings RenderWidget::GenerateLayerTreeSettings(
+@@ -2799,6 +2799,9 @@ cc::LayerTreeSettings RenderWidget::GenerateLayerTreeSettings(
    settings.main_frame_before_activation_enabled =
        cmd.HasSwitch(cc::switches::kEnableMainFrameBeforeActivation);
  

+ 2 - 2
patches/common/chromium/disable_user_gesture_requirement_for_beforeunload_dialogs.patch

@@ -6,10 +6,10 @@ Subject: disable_user_gesture_requirement_for_beforeunload_dialogs.patch
 See https://github.com/electron/electron/issues/10754
 
 diff --git a/third_party/blink/renderer/core/dom/document.cc b/third_party/blink/renderer/core/dom/document.cc
-index 709e8f7a942f0b7c3353ec8c92fac48402ccd685..1536d12fffc11f5806bd53eedb0fd081068d2532 100644
+index ac3b425647a55a89c56561b9e878e5784d337a87..cac37fc103cffccf98246f06f5330d3cfa064f46 100644
 --- a/third_party/blink/renderer/core/dom/document.cc
 +++ b/third_party/blink/renderer/core/dom/document.cc
-@@ -3647,7 +3647,9 @@ bool Document::DispatchBeforeUnloadEvent(ChromeClient* chrome_client,
+@@ -3651,7 +3651,9 @@ bool Document::DispatchBeforeUnloadEvent(ChromeClient* chrome_client,
          "frame that never had a user gesture since its load. "
          "https://www.chromestatus.com/feature/5082396709879808";
      Intervention::GenerateReport(frame_, "BeforeUnloadNoGesture", message);

+ 1 - 1
patches/common/chromium/frame_host_manager.patch

@@ -129,7 +129,7 @@ index de19cb3a5f3d6685d8dede7c3cdb5b47183ed07f..acf458d5c088607d3ceb6d058f28f076
      const MainFunctionParams& parameters) {
    return nullptr;
 diff --git a/content/public/browser/content_browser_client.h b/content/public/browser/content_browser_client.h
-index 2c722d14437cdad69544e0c67921dbaec15b97da..9c7c77b44d279219411ce545c5448acecbd56d59 100644
+index 13342817ac00282bba5089bafb7e3a1ed85f0b0d..97ac4f66b6410fbb5596e01ae8152194d4f235c8 100644
 --- a/content/public/browser/content_browser_client.h
 +++ b/content/public/browser/content_browser_client.h
 @@ -210,8 +210,37 @@ CONTENT_EXPORT void OverrideOnBindInterface(

+ 10 - 10
patches/common/chromium/mas_no_private_api.patch

@@ -38,7 +38,7 @@ index 743d1364bcd13e24ecbe5ced730161d15b8c3e93..a7e81072194c00baa0aa3159a6bfe374
  // is concerned.
  @property(nonatomic, readonly) NSString* subrole;
 diff --git a/content/browser/accessibility/browser_accessibility_cocoa.mm b/content/browser/accessibility/browser_accessibility_cocoa.mm
-index 1d8dbb5a781221dea2fb8138546461d0eddc0243..49a6ad7b31cf959cae19ef535290441598c9306a 100644
+index 8caf327f3fbc65d7f44c329ed9a5177591e4cdba..e628cef11674737b14f4e10d76a48935359b4dea 100644
 --- a/content/browser/accessibility/browser_accessibility_cocoa.mm
 +++ b/content/browser/accessibility/browser_accessibility_cocoa.mm
 @@ -141,6 +141,7 @@
@@ -101,7 +101,7 @@ index 1d8dbb5a781221dea2fb8138546461d0eddc0243..49a6ad7b31cf959cae19ef5352904415
  
  - (NSNumber*)expanded {
    if (![self instanceActive])
-@@ -2030,6 +2040,7 @@ - (NSValue*)selectedTextRange {
+@@ -2029,6 +2039,7 @@ - (NSValue*)selectedTextRange {
    return [NSValue valueWithRange:NSMakeRange(selStart, selLength)];
  }
  
@@ -109,7 +109,7 @@ index 1d8dbb5a781221dea2fb8138546461d0eddc0243..49a6ad7b31cf959cae19ef5352904415
  - (id)selectedTextMarkerRange {
    if (![self instanceActive])
      return nil;
-@@ -2062,6 +2073,7 @@ - (id)selectedTextMarkerRange {
+@@ -2061,6 +2072,7 @@ - (id)selectedTextMarkerRange {
                                                 anchorAffinity, *focusObject,
                                                 focusOffset, focusAffinity));
  }
@@ -117,7 +117,7 @@ index 1d8dbb5a781221dea2fb8138546461d0eddc0243..49a6ad7b31cf959cae19ef5352904415
  
  - (NSValue*)size {
    if (![self instanceActive])
-@@ -2094,6 +2106,7 @@ - (NSString*)sortDirection {
+@@ -2093,6 +2105,7 @@ - (NSString*)sortDirection {
    return nil;
  }
  
@@ -125,7 +125,7 @@ index 1d8dbb5a781221dea2fb8138546461d0eddc0243..49a6ad7b31cf959cae19ef5352904415
  // Returns a text marker that points to the first character in the document that
  // can be selected with VoiceOver.
  - (id)startTextMarker {
-@@ -2104,6 +2117,7 @@ - (id)startTextMarker {
+@@ -2103,6 +2116,7 @@ - (id)startTextMarker {
    BrowserAccessibilityPositionInstance position = root->CreatePositionAt(0);
    return CreateTextMarker(position->CreatePositionAtStartOfAnchor());
  }
@@ -133,7 +133,7 @@ index 1d8dbb5a781221dea2fb8138546461d0eddc0243..49a6ad7b31cf959cae19ef5352904415
  
  // Returns a subrole based upon the role.
  - (NSString*)subrole {
-@@ -2404,12 +2418,14 @@ - (NSAttributedString*)attributedValueForRange:(NSRange)range {
+@@ -2403,12 +2417,14 @@ - (NSAttributedString*)attributedValueForRange:(NSRange)range {
    NSMutableAttributedString* attributedValue =
        [[[NSMutableAttributedString alloc] initWithString:value] autorelease];
  
@@ -148,7 +148,7 @@ index 1d8dbb5a781221dea2fb8138546461d0eddc0243..49a6ad7b31cf959cae19ef5352904415
  
    return [attributedValue attributedSubstringFromRange:range];
  }
-@@ -2494,6 +2510,7 @@ - (id)accessibilityAttributeValue:(NSString*)attribute
+@@ -2491,6 +2507,7 @@ - (id)accessibilityAttributeValue:(NSString*)attribute
        return ToBrowserAccessibilityCocoa(cell);
    }
  
@@ -156,7 +156,7 @@ index 1d8dbb5a781221dea2fb8138546461d0eddc0243..49a6ad7b31cf959cae19ef5352904415
    if ([attribute isEqualToString:@"AXUIElementForTextMarker"]) {
      BrowserAccessibilityPositionInstance position =
          CreatePositionFromTextMarker(parameter);
-@@ -2671,6 +2688,7 @@ - (id)accessibilityAttributeValue:(NSString*)attribute
+@@ -2668,6 +2685,7 @@ - (id)accessibilityAttributeValue:(NSString*)attribute
      NSString* text = GetTextForTextMarkerRange(parameter);
      return [NSNumber numberWithInt:[text length]];
    }
@@ -164,7 +164,7 @@ index 1d8dbb5a781221dea2fb8138546461d0eddc0243..49a6ad7b31cf959cae19ef5352904415
  
    if ([attribute isEqualToString:
                       NSAccessibilityBoundsForRangeParameterizedAttribute]) {
-@@ -2704,6 +2722,7 @@ - (id)accessibilityAttributeValue:(NSString*)attribute
+@@ -2701,6 +2719,7 @@ - (id)accessibilityAttributeValue:(NSString*)attribute
      return nil;
    }
  
@@ -172,7 +172,7 @@ index 1d8dbb5a781221dea2fb8138546461d0eddc0243..49a6ad7b31cf959cae19ef5352904415
    if ([attribute
            isEqualToString:
                NSAccessibilityLineTextMarkerRangeForTextMarkerParameterizedAttribute]) {
-@@ -2784,6 +2803,7 @@ AXPlatformRange range(position->CreatePreviousLineStartPosition(
+@@ -2781,6 +2800,7 @@ AXPlatformRange range(position->CreatePreviousLineStartPosition(
  
      return @(child->GetIndexInParent());
    }

+ 2 - 2
patches/common/chromium/notification_provenance.patch

@@ -109,10 +109,10 @@ index 3373171efb690863c70cd10bd465fc4b3dd5320c..64f2c0344eb9978e712f5c39e1f43d9b
  
    // Removes |service| from the list of owned services, for example because the
 diff --git a/content/browser/renderer_interface_binders.cc b/content/browser/renderer_interface_binders.cc
-index 71fbf9411d3d13ffef112b56d79443c91a1999b9..31dc4d18d453b34ab02dbca6784d9a9782e8ff2c 100644
+index a5d05bdb62acf57e979aa9742dfaa24c54bc02b1..058f23de5a963da40fefa0345645db7d5e2df493 100644
 --- a/content/browser/renderer_interface_binders.cc
 +++ b/content/browser/renderer_interface_binders.cc
-@@ -220,7 +220,7 @@ void RendererInterfaceBinders::InitializeParameterizedBinderRegistry() {
+@@ -208,7 +208,7 @@ void RendererInterfaceBinders::InitializeParameterizedBinderRegistry() {
                      RenderProcessHost* host, const url::Origin& origin) {
          static_cast<StoragePartitionImpl*>(host->GetStoragePartition())
              ->GetPlatformNotificationContext()

+ 3 - 3
patches/common/chromium/resource_file_conflict.patch

@@ -52,10 +52,10 @@ Some alternatives to this patch:
 None of these options seems like a substantial maintainability win over this patch to me (@nornagon).
 
 diff --git a/chrome/BUILD.gn b/chrome/BUILD.gn
-index ebb498247b2b228f166a52a0f7455f0dee916bcc..99e9cb9f2d6332d6b519275cea3deef9af3139f6 100644
+index a1be2930c8dd785b1805260a82b37f8acfa80a5d..b7532fd8e220ecf1039bfa00412f9e930f7d1b02 100644
 --- a/chrome/BUILD.gn
 +++ b/chrome/BUILD.gn
-@@ -1784,7 +1784,7 @@ if (is_chrome_branded && !is_android) {
+@@ -1789,7 +1789,7 @@ if (is_chrome_branded && !is_android) {
    }
  }
  
@@ -64,7 +64,7 @@ index ebb498247b2b228f166a52a0f7455f0dee916bcc..99e9cb9f2d6332d6b519275cea3deef9
    chrome_paks("packed_resources") {
      if (is_mac) {
        output_dir = "$root_gen_dir/repack"
-@@ -1808,6 +1808,12 @@ if (!is_android) {
+@@ -1813,6 +1813,12 @@ if (!is_android) {
    }
  }
  

+ 1 - 1
patches/common/chromium/support_mixed_sandbox_with_zygote.patch

@@ -22,7 +22,7 @@ However, the patch would need to be reviewed by the security team, as it
 does touch a security-sensitive class.
 
 diff --git a/content/browser/renderer_host/render_process_host_impl.cc b/content/browser/renderer_host/render_process_host_impl.cc
-index 0e9f6e57eac4c1fd1eaf8dd1c86ac1153d1a44b4..dffe06fa5262a0b6aebe064f8813b149439cb613 100644
+index 763bec5cedfc44e59ccd40dcbcf7b3f9544cd56e..982b82ef2b517bd21f05f24efc8e0d78c111d495 100644
 --- a/content/browser/renderer_host/render_process_host_impl.cc
 +++ b/content/browser/renderer_host/render_process_host_impl.cc
 @@ -418,6 +418,10 @@ class RendererSandboxedProcessLauncherDelegate

+ 6 - 6
patches/common/chromium/worker_context_will_destroy.patch

@@ -21,10 +21,10 @@ index 5bcf6f95f630ae6232ec9be7d8de7360a1592566..3142a8286e6aaf508a06cee0e32c7390
    // An empty URL is returned if the URL is not overriden.
    virtual GURL OverrideFlashEmbedWithHTML(const GURL& url);
 diff --git a/content/renderer/renderer_blink_platform_impl.cc b/content/renderer/renderer_blink_platform_impl.cc
-index 2e3a922dd2a8a15bfe3eec802085f09d3eda9e5d..30da4053a8438dd018fb2739a6cc0e300af2e657 100644
+index 2c8ade035da690db45fc629ef2aeebf701b20c59..3a23749a6b4a938320edcdc01857c5c741c66b6a 100644
 --- a/content/renderer/renderer_blink_platform_impl.cc
 +++ b/content/renderer/renderer_blink_platform_impl.cc
-@@ -1056,6 +1056,12 @@ void RendererBlinkPlatformImpl::WillStopWorkerThread() {
+@@ -1051,6 +1051,12 @@ void RendererBlinkPlatformImpl::WillStopWorkerThread() {
    WorkerThreadRegistry::Instance()->WillStopCurrentWorkerThread();
  }
  
@@ -38,10 +38,10 @@ index 2e3a922dd2a8a15bfe3eec802085f09d3eda9e5d..30da4053a8438dd018fb2739a6cc0e30
      const v8::Local<v8::Context>& worker) {
    GetContentClient()->renderer()->DidInitializeWorkerContextOnWorkerThread(
 diff --git a/content/renderer/renderer_blink_platform_impl.h b/content/renderer/renderer_blink_platform_impl.h
-index f5298e5e942e43008e469214ba252932cc6d771a..ae28b78037e0a078dd9e11fb0cd3edbfdd0ff986 100644
+index 39d9cf7590c11a178acbf8f9c6dbc3d20088860c..bef9d6351c2a9456ffc5279343515c017a390d97 100644
 --- a/content/renderer/renderer_blink_platform_impl.h
 +++ b/content/renderer/renderer_blink_platform_impl.h
-@@ -201,6 +201,7 @@ class CONTENT_EXPORT RendererBlinkPlatformImpl : public BlinkPlatformImpl {
+@@ -200,6 +200,7 @@ class CONTENT_EXPORT RendererBlinkPlatformImpl : public BlinkPlatformImpl {
    void DidStartWorkerThread() override;
    void WillStopWorkerThread() override;
    void WorkerContextCreated(const v8::Local<v8::Context>& worker) override;
@@ -50,10 +50,10 @@ index f5298e5e942e43008e469214ba252932cc6d771a..ae28b78037e0a078dd9e11fb0cd3edbf
    void RecordMetricsForBackgroundedRendererPurge() override;
  
 diff --git a/third_party/blink/public/platform/platform.h b/third_party/blink/public/platform/platform.h
-index 921175528990fffc8fda609e768be47b856f7621..f52b4d1573c07a9c280d67bc3b2389dd3a549925 100644
+index f2a375b8fc9fd8ef808898ace40139f533c5dae4..083e94481c4c9f8a485984c849e5d2960a4cf6b5 100644
 --- a/third_party/blink/public/platform/platform.h
 +++ b/third_party/blink/public/platform/platform.h
-@@ -660,6 +660,7 @@ class BLINK_PLATFORM_EXPORT Platform {
+@@ -656,6 +656,7 @@ class BLINK_PLATFORM_EXPORT Platform {
    virtual void DidStartWorkerThread() {}
    virtual void WillStopWorkerThread() {}
    virtual void WorkerContextCreated(const v8::Local<v8::Context>& worker) {}

+ 3 - 3
patches/common/v8/add_realloc.patch

@@ -12,7 +12,7 @@ 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 8b23e02bf42ffdab5d8c6f36a4663ed0668531f7..742aaa1df005f28ba55b0c42a18d41e9a74a9b6a 100644
+index 29c32d5ab77db52e4e02f140ac38ef46ff7bfc41..0b517b7a469451952723e10ad834d94c2f17e3e3 100644
 --- a/include/v8.h
 +++ b/include/v8.h
 @@ -4624,6 +4624,13 @@ class V8_EXPORT ArrayBuffer : public Object {
@@ -30,10 +30,10 @@ index 8b23e02bf42ffdab5d8c6f36a4663ed0668531f7..742aaa1df005f28ba55b0c42a18d41e9
       * 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 ca0707f96fc2563a40a038c762bd41b1dd6c4157..373a692d168fde744e41dbb4295e07d12038ff2c 100644
+index b94accdd253770fda80ec81372ba241cd33bc7ca..5202fc9f77559d2e25c71f8f81de3cccbb7ba891 100644
 --- a/src/api/api.cc
 +++ b/src/api/api.cc
-@@ -514,6 +514,10 @@ void V8::SetSnapshotDataBlob(StartupData* snapshot_blob) {
+@@ -515,6 +515,10 @@ void V8::SetSnapshotDataBlob(StartupData* snapshot_blob) {
    i::V8::SetSnapshotBlob(snapshot_blob);
  }
  

+ 3 - 3
patches/common/v8/build_gn.patch

@@ -5,10 +5,10 @@ Subject: build_gn.patch
 
 
 diff --git a/BUILD.gn b/BUILD.gn
-index 086cb460be65f970b6a3c33d86dd1e2254251b9a..c681ae4b50e85f7a62941e6dcf90f9d59f7b83ed 100644
+index e8604cc8765457c2f3e74d0531a6917af35b6d81..098e6bc57d2607b88372eb67495aa7f6d4d0a693 100644
 --- a/BUILD.gn
 +++ b/BUILD.gn
-@@ -278,7 +278,7 @@ config("internal_config") {
+@@ -273,7 +273,7 @@ config("internal_config") {
      ":v8_header_features",
    ]
  
@@ -17,7 +17,7 @@ index 086cb460be65f970b6a3c33d86dd1e2254251b9a..c681ae4b50e85f7a62941e6dcf90f9d5
      defines += [ "BUILDING_V8_SHARED" ]
    }
  }
-@@ -3780,7 +3780,7 @@ if (current_toolchain == v8_generator_toolchain) {
+@@ -3776,7 +3776,7 @@ if (current_toolchain == v8_generator_toolchain) {
        "src/interpreter/bytecodes.h",
      ]
  

+ 4 - 4
patches/common/v8/dcheck.patch

@@ -5,10 +5,10 @@ Subject: dcheck.patch
 
 
 diff --git a/src/api/api.cc b/src/api/api.cc
-index 3e4900bbece3f1f470bbc8f2c23d69bc9a4e238b..0d7e513b6b28464a3fb97177b40a7a5e465e0950 100644
+index f12b8ee0b3883f384a9500dca4ff25b1e6e3e2ec..efaa78cd42945c0a9176a53d59364f488648418a 100644
 --- a/src/api/api.cc
 +++ b/src/api/api.cc
-@@ -8288,7 +8288,7 @@ void Isolate::SetPromiseRejectCallback(PromiseRejectCallback callback) {
+@@ -8289,7 +8289,7 @@ void Isolate::SetPromiseRejectCallback(PromiseRejectCallback callback) {
  }
  
  void Isolate::RunMicrotasks() {
@@ -18,10 +18,10 @@ index 3e4900bbece3f1f470bbc8f2c23d69bc9a4e238b..0d7e513b6b28464a3fb97177b40a7a5e
    isolate->default_microtask_queue()->RunMicrotasks(isolate);
  }
 diff --git a/src/heap/heap.cc b/src/heap/heap.cc
-index 0a35533253b003f9626ace8fcbb85e9e25b51e01..a7ba98a7ded1d970b849f3295b026509077de61f 100644
+index b32c4a004a0d2b91d5bd9e38d2e127248f877004..83294dbaaabbc5aebf39bc74eddb19d9b114feef 100644
 --- a/src/heap/heap.cc
 +++ b/src/heap/heap.cc
-@@ -4999,9 +4999,9 @@ void Heap::TearDown() {
+@@ -5075,9 +5075,9 @@ void Heap::TearDown() {
  void Heap::AddGCPrologueCallback(v8::Isolate::GCCallbackWithData callback,
                                   GCType gc_type, void* data) {
    DCHECK_NOT_NULL(callback);

+ 15 - 15
patches/common/v8/deps_provide_more_v8_backwards_compatibility.patch

@@ -22,7 +22,7 @@ Reviewed-By: Yang Guo <[email protected]>
 Reviewed-By: Michaël Zasso <[email protected]>
 
 diff --git a/include/v8.h b/include/v8.h
-index 088f43304a7b9ca2e5abb787332dbda9b05b9bd4..05475e50ce9ac33092d05b0f06cc8605af48b2c1 100644
+index 8012a1935018dde4ec72fd3945457321be9f6319..cb9da12b88bca393ea814a226da82ecae857d343 100644
 --- a/include/v8.h
 +++ b/include/v8.h
 @@ -1108,6 +1108,10 @@ class V8_EXPORT PrimitiveArray {
@@ -143,7 +143,7 @@ index 088f43304a7b9ca2e5abb787332dbda9b05b9bd4..05475e50ce9ac33092d05b0f06cc8605
  
    Local<String> ValueOf() const;
  
-@@ -10386,6 +10427,30 @@ template <class T> Value* Value::Cast(T* value) {
+@@ -10415,6 +10456,30 @@ template <class T> Value* Value::Cast(T* value) {
  }
  
  
@@ -175,10 +175,10 @@ index 088f43304a7b9ca2e5abb787332dbda9b05b9bd4..05475e50ce9ac33092d05b0f06cc8605
  #ifdef V8_ENABLE_CHECKS
    CheckCast(value);
 diff --git a/src/api/api.cc b/src/api/api.cc
-index 7ddaf3858c6bbf19e62614835dc143a09047795c..3e4900bbece3f1f470bbc8f2c23d69bc9a4e238b 100644
+index 92bcc561d50276b31d5bd988dfa7247aaef20a8d..f12b8ee0b3883f384a9500dca4ff25b1e6e3e2ec 100644
 --- a/src/api/api.cc
 +++ b/src/api/api.cc
-@@ -2179,6 +2179,10 @@ int PrimitiveArray::Length() const {
+@@ -2180,6 +2180,10 @@ int PrimitiveArray::Length() const {
    return array->length();
  }
  
@@ -189,7 +189,7 @@ index 7ddaf3858c6bbf19e62614835dc143a09047795c..3e4900bbece3f1f470bbc8f2c23d69bc
  void PrimitiveArray::Set(Isolate* v8_isolate, int index,
                           Local<Primitive> item) {
    i::Isolate* isolate = reinterpret_cast<i::Isolate*>(v8_isolate);
-@@ -2192,6 +2196,10 @@ void PrimitiveArray::Set(Isolate* v8_isolate, int index,
+@@ -2193,6 +2197,10 @@ void PrimitiveArray::Set(Isolate* v8_isolate, int index,
    array->set(index, *i_item);
  }
  
@@ -200,7 +200,7 @@ index 7ddaf3858c6bbf19e62614835dc143a09047795c..3e4900bbece3f1f470bbc8f2c23d69bc
  Local<Primitive> PrimitiveArray::Get(Isolate* v8_isolate, int index) {
    i::Isolate* isolate = reinterpret_cast<i::Isolate*>(v8_isolate);
    i::Handle<i::FixedArray> array = Utils::OpenHandle(this);
-@@ -2875,6 +2883,10 @@ void Message::PrintCurrentStackTrace(Isolate* isolate, FILE* out) {
+@@ -2876,6 +2884,10 @@ void Message::PrintCurrentStackTrace(Isolate* isolate, FILE* out) {
  
  // --- S t a c k T r a c e ---
  
@@ -211,7 +211,7 @@ index 7ddaf3858c6bbf19e62614835dc143a09047795c..3e4900bbece3f1f470bbc8f2c23d69bc
  Local<StackFrame> StackTrace::GetFrame(Isolate* v8_isolate,
                                         uint32_t index) const {
    i::Isolate* isolate = reinterpret_cast<i::Isolate*>(v8_isolate);
-@@ -3766,6 +3778,34 @@ void v8::RegExp::CheckCast(v8::Value* that) {
+@@ -3767,6 +3779,34 @@ void v8::RegExp::CheckCast(v8::Value* that) {
                    "Could not convert to regular expression");
  }
  
@@ -246,7 +246,7 @@ index 7ddaf3858c6bbf19e62614835dc143a09047795c..3e4900bbece3f1f470bbc8f2c23d69bc
  
  Maybe<bool> Value::BooleanValue(Local<Context> context) const {
    i::Isolate* isolate = reinterpret_cast<i::Isolate*>(context->GetIsolate());
-@@ -3850,6 +3890,11 @@ MaybeLocal<Uint32> Value::ToArrayIndex(Local<Context> context) const {
+@@ -3851,6 +3891,11 @@ MaybeLocal<Uint32> Value::ToArrayIndex(Local<Context> context) const {
    return Local<Uint32>();
  }
  
@@ -258,7 +258,7 @@ index 7ddaf3858c6bbf19e62614835dc143a09047795c..3e4900bbece3f1f470bbc8f2c23d69bc
  Maybe<bool> Value::Equals(Local<Context> context, Local<Value> that) const {
    i::Isolate* isolate = Utils::OpenHandle(*context)->GetIsolate();
    auto self = Utils::OpenHandle(this);
-@@ -5082,6 +5127,10 @@ bool String::ContainsOnlyOneByte() const {
+@@ -5083,6 +5128,10 @@ bool String::ContainsOnlyOneByte() const {
    return helper.Check(*str);
  }
  
@@ -269,7 +269,7 @@ index 7ddaf3858c6bbf19e62614835dc143a09047795c..3e4900bbece3f1f470bbc8f2c23d69bc
  int String::Utf8Length(Isolate* isolate) const {
    i::Handle<i::String> str = Utils::OpenHandle(this);
    str = i::String::Flatten(reinterpret_cast<i::Isolate*>(isolate), str);
-@@ -5234,6 +5283,14 @@ static int WriteUtf8Impl(i::Vector<const Char> string, char* write_start,
+@@ -5235,6 +5284,14 @@ static int WriteUtf8Impl(i::Vector<const Char> string, char* write_start,
  }
  }  // anonymous namespace
  
@@ -284,7 +284,7 @@ index 7ddaf3858c6bbf19e62614835dc143a09047795c..3e4900bbece3f1f470bbc8f2c23d69bc
  int String::WriteUtf8(Isolate* v8_isolate, char* buffer, int capacity,
                        int* nchars_ref, int options) const {
    i::Handle<i::String> str = Utils::OpenHandle(this);
-@@ -5272,6 +5329,16 @@ static inline int WriteHelper(i::Isolate* isolate, const String* string,
+@@ -5273,6 +5330,16 @@ static inline int WriteHelper(i::Isolate* isolate, const String* string,
    return end - start;
  }
  
@@ -301,7 +301,7 @@ index 7ddaf3858c6bbf19e62614835dc143a09047795c..3e4900bbece3f1f470bbc8f2c23d69bc
  int String::WriteOneByte(Isolate* isolate, uint8_t* buffer, int start,
                           int length, int options) const {
    return WriteHelper(reinterpret_cast<i::Isolate*>(isolate), this, buffer,
-@@ -6183,6 +6250,11 @@ MaybeLocal<String> String::NewFromTwoByte(Isolate* isolate,
+@@ -6184,6 +6251,11 @@ MaybeLocal<String> String::NewFromTwoByte(Isolate* isolate,
    return result;
  }
  
@@ -313,7 +313,7 @@ index 7ddaf3858c6bbf19e62614835dc143a09047795c..3e4900bbece3f1f470bbc8f2c23d69bc
  Local<String> v8::String::Concat(Isolate* v8_isolate, Local<String> left,
                                   Local<String> right) {
    i::Isolate* isolate = reinterpret_cast<i::Isolate*>(v8_isolate);
-@@ -6452,6 +6524,10 @@ bool v8::BooleanObject::ValueOf() const {
+@@ -6453,6 +6525,10 @@ bool v8::BooleanObject::ValueOf() const {
    return jsvalue->value()->IsTrue(isolate);
  }
  
@@ -324,7 +324,7 @@ index 7ddaf3858c6bbf19e62614835dc143a09047795c..3e4900bbece3f1f470bbc8f2c23d69bc
  Local<v8::Value> v8::StringObject::New(Isolate* v8_isolate,
                                         Local<String> value) {
    i::Handle<i::String> string = Utils::OpenHandle(*value);
-@@ -8641,6 +8717,9 @@ bool MicrotasksScope::IsRunningMicrotasks(Isolate* v8_isolate) {
+@@ -8642,6 +8718,9 @@ bool MicrotasksScope::IsRunningMicrotasks(Isolate* v8_isolate) {
    return microtask_queue->IsRunningMicrotasks();
  }
  
@@ -334,7 +334,7 @@ index 7ddaf3858c6bbf19e62614835dc143a09047795c..3e4900bbece3f1f470bbc8f2c23d69bc
  String::Utf8Value::Utf8Value(v8::Isolate* isolate, v8::Local<v8::Value> obj)
      : str_(nullptr), length_(0) {
    if (obj.IsEmpty()) return;
-@@ -8658,6 +8737,9 @@ String::Utf8Value::Utf8Value(v8::Isolate* isolate, v8::Local<v8::Value> obj)
+@@ -8659,6 +8738,9 @@ String::Utf8Value::Utf8Value(v8::Isolate* isolate, v8::Local<v8::Value> obj)
  
  String::Utf8Value::~Utf8Value() { i::DeleteArray(str_); }
  

+ 3 - 3
patches/common/v8/export_symbols_needed_for_windows_build.patch

@@ -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.h b/src/objects.h
-index f95385231bd9d44c1f6bee5a00b17455d0e0beb9..79fbeb5ea5cddac24bd9376d1135a27c9f368152 100644
+index 16f5ff3d192016df9d3f8687a9978854fd916d64..5a2f0e02b2e4ab4c5ab8edd9d1dccfd7a2ad5e3a 100644
 --- a/src/objects.h
 +++ b/src/objects.h
-@@ -794,7 +794,7 @@ enum class KeyCollectionMode {
+@@ -803,7 +803,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.
@@ -19,7 +19,7 @@ index f95385231bd9d44c1f6bee5a00b17455d0e0beb9..79fbeb5ea5cddac24bd9376d1135a27c
    explicit inline Relocatable(Isolate* isolate);
    inline virtual ~Relocatable();
 diff --git a/src/objects/ordered-hash-table.h b/src/objects/ordered-hash-table.h
-index e34637f969f91d05784d6be77285e16363830a30..56ce1ddc6800f2ddde54ae68e01549d23b56419c 100644
+index 949c94f87708e64e39fb8de2131a5363d0d52b82..d20776b017fd57b9f9053b753a045c774e28496c 100644
 --- a/src/objects/ordered-hash-table.h
 +++ b/src/objects/ordered-hash-table.h
 @@ -60,7 +60,7 @@ namespace internal {

+ 2 - 2
patches/common/v8/expose_mksnapshot.patch

@@ -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 c681ae4b50e85f7a62941e6dcf90f9d59f7b83ed..72bca2c6719dd68b3a8158613d459f8f12b58626 100644
+index 098e6bc57d2607b88372eb67495aa7f6d4d0a693..1d23860d7b01be1ec7f522d3a74ef214fe2df4b4 100644
 --- a/BUILD.gn
 +++ b/BUILD.gn
-@@ -3791,8 +3791,6 @@ if (current_toolchain == v8_generator_toolchain) {
+@@ -3787,8 +3787,6 @@ if (current_toolchain == v8_generator_toolchain) {
  
  if (v8_use_snapshot && current_toolchain == v8_snapshot_toolchain) {
    v8_executable("mksnapshot") {

+ 8 - 8
patches/common/v8/fixme_revert_heap_api_remove_deprecated_apis.patch

@@ -21,7 +21,7 @@ index fe2ce67e0df04e58502d73ca5ac81a86ee001494..ed110be42bf4d7ab47bee480d8dbbfe5
    static const int kNodeIsActiveShift = 4;
  
 diff --git a/include/v8.h b/include/v8.h
-index 0adb423592e7040f60a2bb8f1b9429228341838b..2f983b34ceb2ae9a98fac682de66336d9d016d16 100644
+index 011495aafd67337b7e0251e571ee2d79bdcfedb3..a497511e960a6b2c461803d75eb491536c2500d4 100644
 --- a/include/v8.h
 +++ b/include/v8.h
 @@ -576,6 +576,10 @@ template <class T> class PersistentBase {
@@ -35,7 +35,7 @@ index 0adb423592e7040f60a2bb8f1b9429228341838b..2f983b34ceb2ae9a98fac682de66336d
    /** Returns true if the handle's reference is weak.  */
    V8_INLINE bool IsWeak() const;
  
-@@ -8530,6 +8534,17 @@ class V8_EXPORT Isolate {
+@@ -8559,6 +8563,17 @@ class V8_EXPORT Isolate {
     */
    void VisitHandlesWithClassIds(PersistentHandleVisitor* visitor);
  
@@ -53,7 +53,7 @@ index 0adb423592e7040f60a2bb8f1b9429228341838b..2f983b34ceb2ae9a98fac682de66336d
    /**
     * Iterates through all the persistent handles in the current isolate's heap
     * that have class_ids and are weak to be marked as inactive if there is no
-@@ -9807,6 +9822,17 @@ bool PersistentBase<T>::IsIndependent() const {
+@@ -9836,6 +9851,17 @@ bool PersistentBase<T>::IsIndependent() const {
                          I::kNodeIsIndependentShift);
  }
  
@@ -72,10 +72,10 @@ index 0adb423592e7040f60a2bb8f1b9429228341838b..2f983b34ceb2ae9a98fac682de66336d
  bool PersistentBase<T>::IsWeak() const {
    typedef internal::Internals I;
 diff --git a/src/api/api.cc b/src/api/api.cc
-index 693872f22581066cbc33d0b87fed6e3e40102e6e..d0c0ae17edb94e88ec48828e115ecd762ef0674c 100644
+index 0964a815793f3347e5326817e56e75cd851cea4d..a45520f4d4e93f28a87408f7a32ae52fbd772355 100644
 --- a/src/api/api.cc
 +++ b/src/api/api.cc
-@@ -8628,6 +8628,15 @@ void Isolate::VisitHandlesWithClassIds(PersistentHandleVisitor* visitor) {
+@@ -8629,6 +8629,15 @@ void Isolate::VisitHandlesWithClassIds(PersistentHandleVisitor* visitor) {
    isolate->global_handles()->IterateAllRootsWithClassIds(visitor);
  }
  
@@ -92,7 +92,7 @@ index 693872f22581066cbc33d0b87fed6e3e40102e6e..d0c0ae17edb94e88ec48828e115ecd76
    i::Isolate* isolate = reinterpret_cast<i::Isolate*>(this);
    i::DisallowHeapAllocation no_allocation;
 diff --git a/src/global-handles.cc b/src/global-handles.cc
-index ef0181d5913f5e89baa6b16b98d5568943e34d01..02561dd2896ed459de9000cc28493fd2ca57de1a 100644
+index b647cc6d55089e1c1835c0b7fd24bf84b3995ab4..e6e9943876f34ca3818b2525f229dc371851eb4f 100644
 --- a/src/global-handles.cc
 +++ b/src/global-handles.cc
 @@ -380,6 +380,7 @@ class GlobalHandles::Node final : public NodeBase<GlobalHandles::Node> {
@@ -141,7 +141,7 @@ index 8d5bae1491d34311f9559cc70c68498416a326af..e7a0b834d8a70cb368499222687c5bca
    static bool IsWeak(Address* location);
  
 diff --git a/test/cctest/heap/test-heap.cc b/test/cctest/heap/test-heap.cc
-index f67ee369ba3b9954f8af431bea93ecc3933b4e26..4b1019c4f4e0cd04662dd2fdc850dc4ef9256a45 100644
+index faad45cb4c11360487d97b04bdde0dce71d9e3cd..50a84514c9aa342c08c0d7c107112cafa219654e 100644
 --- a/test/cctest/heap/test-heap.cc
 +++ b/test/cctest/heap/test-heap.cc
 @@ -527,9 +527,14 @@ TEST(WeakGlobalHandlesScavenge) {
@@ -212,7 +212,7 @@ index f67ee369ba3b9954f8af431bea93ecc3933b4e26..4b1019c4f4e0cd04662dd2fdc850dc4e
  }
  
 diff --git a/test/cctest/test-api.cc b/test/cctest/test-api.cc
-index 8db9adcf509b4dcdab08f87dbe9148038fdefda3..5333cec913d249c331e12d267fa76f7e08f16b24 100644
+index af2026ed86b43d35998e1ce0e760b1622af1a8b5..7250e83ef39817162ef87374ffd474c182541bef 100644
 --- a/test/cctest/test-api.cc
 +++ b/test/cctest/test-api.cc
 @@ -19812,6 +19812,43 @@ TEST(WrapperClassId) {

+ 9 - 9
patches/common/v8/revert_api_remove_deprecated_conversion_functions.patch

@@ -6,7 +6,7 @@ Subject: Revert "[api] Remove deprecated conversion functions"
 This reverts commit c76f377a990343b18953123c2726337b38c59812.
 
 diff --git a/include/v8.h b/include/v8.h
-index 742aaa1df005f28ba55b0c42a18d41e9a74a9b6a..088f43304a7b9ca2e5abb787332dbda9b05b9bd4 100644
+index 0b517b7a469451952723e10ad834d94c2f17e3e3..8012a1935018dde4ec72fd3945457321be9f6319 100644
 --- a/include/v8.h
 +++ b/include/v8.h
 @@ -2493,6 +2493,9 @@ class V8_EXPORT Value : public Data {
@@ -47,10 +47,10 @@ index 742aaa1df005f28ba55b0c42a18d41e9a74a9b6a..088f43304a7b9ca2e5abb787332dbda9
    V8_WARN_UNUSED_RESULT Maybe<int64_t> IntegerValue(
        Local<Context> context) const;
 diff --git a/src/api/api.cc b/src/api/api.cc
-index 373a692d168fde744e41dbb4295e07d12038ff2c..7ddaf3858c6bbf19e62614835dc143a09047795c 100644
+index 5202fc9f77559d2e25c71f8f81de3cccbb7ba891..92bcc561d50276b31d5bd988dfa7247aaef20a8d 100644
 --- a/src/api/api.cc
 +++ b/src/api/api.cc
-@@ -3429,6 +3429,12 @@ MaybeLocal<String> Value::ToString(Local<Context> context) const {
+@@ -3430,6 +3430,12 @@ MaybeLocal<String> Value::ToString(Local<Context> context) const {
    RETURN_ESCAPED(result);
  }
  
@@ -63,7 +63,7 @@ index 373a692d168fde744e41dbb4295e07d12038ff2c..7ddaf3858c6bbf19e62614835dc143a0
  MaybeLocal<String> Value::ToDetailString(Local<Context> context) const {
    i::Handle<i::Object> obj = Utils::OpenHandle(this);
    if (obj->IsString()) return ToApiHandle<String>(obj);
-@@ -3450,6 +3456,11 @@ MaybeLocal<Object> Value::ToObject(Local<Context> context) const {
+@@ -3451,6 +3457,11 @@ MaybeLocal<Object> Value::ToObject(Local<Context> context) const {
    RETURN_ESCAPED(result);
  }
  
@@ -75,7 +75,7 @@ index 373a692d168fde744e41dbb4295e07d12038ff2c..7ddaf3858c6bbf19e62614835dc143a0
  MaybeLocal<BigInt> Value::ToBigInt(Local<Context> context) const {
    i::Handle<i::Object> obj = Utils::OpenHandle(this);
    if (obj->IsBigInt()) return ToApiHandle<BigInt>(obj);
-@@ -3466,6 +3477,11 @@ bool Value::BooleanValue(Isolate* v8_isolate) const {
+@@ -3467,6 +3478,11 @@ bool Value::BooleanValue(Isolate* v8_isolate) const {
        reinterpret_cast<i::Isolate*>(v8_isolate));
  }
  
@@ -87,7 +87,7 @@ index 373a692d168fde744e41dbb4295e07d12038ff2c..7ddaf3858c6bbf19e62614835dc143a0
  Local<Boolean> Value::ToBoolean(Isolate* v8_isolate) const {
    auto isolate = reinterpret_cast<i::Isolate*>(v8_isolate);
    return ToApiHandle<Boolean>(
-@@ -3483,6 +3499,12 @@ MaybeLocal<Number> Value::ToNumber(Local<Context> context) const {
+@@ -3484,6 +3500,12 @@ MaybeLocal<Number> Value::ToNumber(Local<Context> context) const {
    RETURN_ESCAPED(result);
  }
  
@@ -100,7 +100,7 @@ index 373a692d168fde744e41dbb4295e07d12038ff2c..7ddaf3858c6bbf19e62614835dc143a0
  MaybeLocal<Integer> Value::ToInteger(Local<Context> context) const {
    auto obj = Utils::OpenHandle(this);
    if (obj->IsSmi()) return ToApiHandle<Integer>(obj);
-@@ -3494,6 +3516,12 @@ MaybeLocal<Integer> Value::ToInteger(Local<Context> context) const {
+@@ -3495,6 +3517,12 @@ MaybeLocal<Integer> Value::ToInteger(Local<Context> context) const {
    RETURN_ESCAPED(result);
  }
  
@@ -113,7 +113,7 @@ index 373a692d168fde744e41dbb4295e07d12038ff2c..7ddaf3858c6bbf19e62614835dc143a0
  MaybeLocal<Int32> Value::ToInt32(Local<Context> context) const {
    auto obj = Utils::OpenHandle(this);
    if (obj->IsSmi()) return ToApiHandle<Int32>(obj);
-@@ -3505,6 +3533,12 @@ MaybeLocal<Int32> Value::ToInt32(Local<Context> context) const {
+@@ -3506,6 +3534,12 @@ MaybeLocal<Int32> Value::ToInt32(Local<Context> context) const {
    RETURN_ESCAPED(result);
  }
  
@@ -126,7 +126,7 @@ index 373a692d168fde744e41dbb4295e07d12038ff2c..7ddaf3858c6bbf19e62614835dc143a0
  MaybeLocal<Uint32> Value::ToUint32(Local<Context> context) const {
    auto obj = Utils::OpenHandle(this);
    if (obj->IsSmi()) return ToApiHandle<Uint32>(obj);
-@@ -3732,6 +3766,13 @@ void v8::RegExp::CheckCast(v8::Value* that) {
+@@ -3733,6 +3767,13 @@ void v8::RegExp::CheckCast(v8::Value* that) {
                    "Could not convert to regular expression");
  }
  

+ 6 - 6
patches/common/v8/revert_cctest_add_v8_export_private_to_arm_arm64_ports.patch

@@ -303,7 +303,7 @@ index 54b927c3f407bfdaf69e8312360da9cd31c159d1..1da32ae6f4f0a9ee082a4e5c4e987125
    template <typename... CPURegisters>
    explicit CPURegList(CPURegister reg0, CPURegisters... regs)
 diff --git a/src/arm64/simulator-arm64.h b/src/arm64/simulator-arm64.h
-index e8d06f90034c58f5fb293e3bd56171fa9ad3e20c..c11531f1ea682cb749f456eb375b261779c7890b 100644
+index 2a5e25518badddd77febee11debdfb90868f8b8b..673ff8710cabad467fc08556ab96d3737c6d3e03 100644
 --- a/src/arm64/simulator-arm64.h
 +++ b/src/arm64/simulator-arm64.h
 @@ -656,11 +656,10 @@ class Simulator : public DecoderVisitor, public SimulatorBase {
@@ -416,7 +416,7 @@ index db1b8de69b8d0efff6a7f72094e2298a34753b8b..a58702f0d6bb572a666c0261c84c68a5
  
  }  // namespace internal
 diff --git a/src/objects.cc b/src/objects.cc
-index b2e8a3880f1969e426a52d4760701ae26385bca7..5bac83ff1fc1920c535cc2d53d76518fe6a521d4 100644
+index c1ae7ac0640ddf72494d94a636b77084fe8493ae..f4957e844aea20d1fae87b81dba480f6c01faf5b 100644
 --- a/src/objects.cc
 +++ b/src/objects.cc
 @@ -1239,7 +1239,7 @@ bool Object::ToInt32(int32_t* value) {
@@ -447,7 +447,7 @@ index a23763d893bda0003016d84b8f6f8d2c21365fcb..a078d30f2d84e65b087a3bcaf88002f1
    void DeoptimizeDependentCodeGroup(Isolate* isolate, DependencyGroup group);
  
 diff --git a/src/objects/shared-function-info.h b/src/objects/shared-function-info.h
-index c7d583cf7e077ee2cf401c37eb44460d6ff97817..38d25fb5536caeaf3293aab023c9c33880e01cbc 100644
+index 40d40e182917e4c7b9b6afec70c4735c89d7c5bb..e06c9eb74a8c3b8bbcaab8fb0b1f29d9f981ae46 100644
 --- a/src/objects/shared-function-info.h
 +++ b/src/objects/shared-function-info.h
 @@ -221,9 +221,7 @@ class InterpreterData : public Struct {
@@ -510,7 +510,7 @@ index c7e9460904afe50613d811363d5d4c1281796fad..5b152501196c7aff9311f07e7262e491
   public:
    inline SubStringRange(String string, const DisallowHeapAllocation& no_gc,
 diff --git a/src/regexp/jsregexp.h b/src/regexp/jsregexp.h
-index 0a0b5c10d66d65054e4865d7e920c082daa93158..a44e9f95866ca93659cb3423284352e06d87b04d 100644
+index 9866caa900888273de74cfb012845748931d0fd0..4c7526a59342743f6068e5c61d24c8dad4efd43f 100644
 --- a/src/regexp/jsregexp.h
 +++ b/src/regexp/jsregexp.h
 @@ -1513,8 +1513,7 @@ class RegExpEngine: public AllStatic {
@@ -537,12 +537,12 @@ index d31f5ff067c9b096a94705769c64586ffd546341..cce60d015af915e0984060dd2e84d6f7
    uint32_t table_index;
    WasmInitExpr offset;
 diff --git a/test/cctest/parsing/test-parse-decision.cc b/test/cctest/parsing/test-parse-decision.cc
-index 14b772cd4b72fb7fda13c1633b3c2371aa23485d..2146ca767a53efd3d9ae2f689918de16fd4cbea2 100644
+index c5426e4243bb304079e048820d51d0e5914e695e..4d873cdbfedc7f2f61eff486d828fe020d00eedc 100644
 --- a/test/cctest/parsing/test-parse-decision.cc
 +++ b/test/cctest/parsing/test-parse-decision.cc
 @@ -14,7 +14,6 @@
+ #include "src/execution/isolate.h"
  #include "src/handles-inl.h"
- #include "src/isolate.h"
  #include "src/objects-inl.h"
 -#include "src/objects/shared-function-info-inl.h"
  #include "src/utils.h"

+ 11 - 11
patches/common/v8/revert_reland_api_heap_remove_deprecated_persistent_apis.patch

@@ -55,7 +55,7 @@ index 29d813e4274d16939b77e5e1d13f097c5e08b0af..24962607076f780105365700d5aff103
  class PersistentValueMap : public PersistentValueMapBase<K, V, Traits> {
   public:
 diff --git a/include/v8.h b/include/v8.h
-index 05475e50ce9ac33092d05b0f06cc8605af48b2c1..0adb423592e7040f60a2bb8f1b9429228341838b 100644
+index cb9da12b88bca393ea814a226da82ecae857d343..011495aafd67337b7e0251e571ee2d79bdcfedb3 100644
 --- a/include/v8.h
 +++ b/include/v8.h
 @@ -544,6 +544,38 @@ template <class T> class PersistentBase {
@@ -97,7 +97,7 @@ index 05475e50ce9ac33092d05b0f06cc8605af48b2c1..0adb423592e7040f60a2bb8f1b942922
    /** Returns true if the handle's reference is weak.  */
    V8_INLINE bool IsWeak() const;
  
-@@ -8818,6 +8850,9 @@ class V8_EXPORT V8 {
+@@ -8847,6 +8879,9 @@ class V8_EXPORT V8 {
                                       const char* label);
    static Value* Eternalize(Isolate* isolate, Value* handle);
  
@@ -107,7 +107,7 @@ index 05475e50ce9ac33092d05b0f06cc8605af48b2c1..0adb423592e7040f60a2bb8f1b942922
    template <class K, class V, class T>
    friend class PersistentValueMapBase;
  
-@@ -9764,6 +9799,14 @@ void Persistent<T, M>::Copy(const Persistent<S, M2>& that) {
+@@ -9793,6 +9828,14 @@ void Persistent<T, M>::Copy(const Persistent<S, M2>& that) {
    M::Copy(that, this);
  }
  
@@ -122,7 +122,7 @@ index 05475e50ce9ac33092d05b0f06cc8605af48b2c1..0adb423592e7040f60a2bb8f1b942922
  template <class T>
  bool PersistentBase<T>::IsWeak() const {
    typedef internal::Internals I;
-@@ -9830,6 +9873,31 @@ void PersistentBase<T>::AnnotateStrongRetainer(const char* label) {
+@@ -9859,6 +9902,31 @@ void PersistentBase<T>::AnnotateStrongRetainer(const char* label) {
                               label);
  }
  
@@ -155,10 +155,10 @@ index 05475e50ce9ac33092d05b0f06cc8605af48b2c1..0adb423592e7040f60a2bb8f1b942922
  void PersistentBase<T>::SetWrapperClassId(uint16_t class_id) {
    typedef internal::Internals I;
 diff --git a/src/api/api.cc b/src/api/api.cc
-index 0d7e513b6b28464a3fb97177b40a7a5e465e0950..693872f22581066cbc33d0b87fed6e3e40102e6e 100644
+index efaa78cd42945c0a9176a53d59364f488648418a..0964a815793f3347e5326817e56e75cd851cea4d 100644
 --- a/src/api/api.cc
 +++ b/src/api/api.cc
-@@ -1043,6 +1043,11 @@ void V8::MoveTracedGlobalReference(internal::Address** from,
+@@ -1044,6 +1044,11 @@ void V8::MoveTracedGlobalReference(internal::Address** from,
    i::GlobalHandles::MoveTracedGlobal(from, to);
  }
  
@@ -171,7 +171,7 @@ index 0d7e513b6b28464a3fb97177b40a7a5e465e0950..693872f22581066cbc33d0b87fed6e3e
                    WeakCallbackInfo<void>::Callback weak_callback,
                    WeakCallbackType type) {
 diff --git a/src/global-handles.cc b/src/global-handles.cc
-index 472d114240973452ec39579db4e1e8fefef03c60..ef0181d5913f5e89baa6b16b98d5568943e34d01 100644
+index ab6172836d38ad53b8b4f5d8d3cac5740ddd6788..b647cc6d55089e1c1835c0b7fd24bf84b3995ab4 100644
 --- a/src/global-handles.cc
 +++ b/src/global-handles.cc
 @@ -380,6 +380,10 @@ class GlobalHandles::Node final : public NodeBase<GlobalHandles::Node> {
@@ -311,7 +311,7 @@ index 472d114240973452ec39579db4e1e8fefef03c60..ef0181d5913f5e89baa6b16b98d55689
        DCHECK(node->has_callback());
        DCHECK(node->IsPendingFinalizer());
 diff --git a/src/profiler/sampling-heap-profiler.cc b/src/profiler/sampling-heap-profiler.cc
-index 227225eb5a1ae7275057295262cff9408275cf4e..6e1cd733820b41c932676c5cc116caa38c3ace16 100644
+index 2b22e673d7cfb4601a31f3d687eb5b3ba69be6c4..cd79b398b482ca31dcad8477d99a8b9a9644640c 100644
 --- a/src/profiler/sampling-heap-profiler.cc
 +++ b/src/profiler/sampling-heap-profiler.cc
 @@ -92,6 +92,16 @@ void SamplingHeapProfiler::SampleObject(Address soon_object, size_t size) {
@@ -521,7 +521,7 @@ index 022d605aff3b2eafa07be9075c1ff1645baecbfb..aa76386a22f234bb133e54a853e40b30
  }
  
 diff --git a/test/cctest/heap/test-heap.cc b/test/cctest/heap/test-heap.cc
-index 968b34b5db0a1b0a7bebec1f4ee921490910924a..f67ee369ba3b9954f8af431bea93ecc3933b4e26 100644
+index 951c249c0ab909bef84e28221f682389c58d7b11..faad45cb4c11360487d97b04bdde0dce71d9e3cd 100644
 --- a/test/cctest/heap/test-heap.cc
 +++ b/test/cctest/heap/test-heap.cc
 @@ -496,6 +496,44 @@ static void TestWeakGlobalHandleCallback(
@@ -681,7 +681,7 @@ index 968b34b5db0a1b0a7bebec1f4ee921490910924a..f67ee369ba3b9954f8af431bea93ecc3
  }
  
 diff --git a/test/cctest/test-api.cc b/test/cctest/test-api.cc
-index dec356bd5b4cba09dfcb2898987b780f67d021e0..8db9adcf509b4dcdab08f87dbe9148038fdefda3 100644
+index 2118f34f1025125b746291af8830ddefd8b45c81..af2026ed86b43d35998e1ce0e760b1622af1a8b5 100644
 --- a/test/cctest/test-api.cc
 +++ b/test/cctest/test-api.cc
 @@ -8089,6 +8089,18 @@ static void IndependentWeakHandle(bool global_gc, bool interlinked) {
@@ -741,7 +741,7 @@ index dec356bd5b4cba09dfcb2898987b780f67d021e0..8db9adcf509b4dcdab08f87dbe914803
        EmptyMessageQueues(isolate);
        CHECK(object.flag);
 diff --git a/test/cctest/test-global-handles.cc b/test/cctest/test-global-handles.cc
-index 7ce17a7a3975282d94fdde172f26bf12c95738c5..dba70f714fa35ee50653ee3dd4efab4f764ed89a 100644
+index 3cf57b04b2fc9bfa2450d06954b179707527d68d..f2b9bb4cc5fe5f3ce62db3577e63c9ab7ed51609 100644
 --- a/test/cctest/test-global-handles.cc
 +++ b/test/cctest/test-global-handles.cc
 @@ -39,25 +39,6 @@ namespace internal {

+ 1 - 1
patches/common/v8/workaround_an_undefined_symbol_error.patch

@@ -12,7 +12,7 @@ By moving some functions out of the the arm64-assembler header file,
 this error no longer seems to happen.
 
 diff --git a/src/arm64/assembler-arm64.cc b/src/arm64/assembler-arm64.cc
-index 988259264aed79549dd2028d8565841500e401c8..b7ab517fd38426100559469dc547c7c9603bceac 100644
+index 4408a44770bcc5106bc2dd843ef4954dad7ff7df..df9683fd5e9720255ff6b83e47ec64e2f83f7722 100644
 --- a/src/arm64/assembler-arm64.cc
 +++ b/src/arm64/assembler-arm64.cc
 @@ -4013,6 +4013,22 @@ void Assembler::MoveWide(const Register& rd, uint64_t imm, int shift,