Files
cromite/build/patches/Enable-Android-Dynamic-Performance-Framework.patch
T

85 lines
3.9 KiB
Diff

From: uazo <uazo@users.noreply.github.com>
Date: Wed, 23 Aug 2023 13:49:19 +0000
Subject: Enable Android Dynamic Performance Framework
License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
---
chrome/version.gni | 8 ++++----
components/viz/common/features.cc | 2 ++
components/viz/service/performance_hint/hint_session.cc | 5 +----
3 files changed, 7 insertions(+), 8 deletions(-)
diff --git a/chrome/version.gni b/chrome/version.gni
--- a/chrome/version.gni
+++ b/chrome/version.gni
@@ -86,7 +86,7 @@ if (target_os == "android") {
_version_dictionary_template +=
"trichrome_auto_64_version_code = \"@TRICHROME_AUTO_64_VERSION_CODE@\" "
_version_dictionary_template += "trichrome_desktop_64_version_code = \"@TRICHROME_DESKTOP_64_VERSION_CODE@\" "
- if (target_cpu == "arm64") {
+ if (target_cpu == "arm64" || target_cpu == "x64") {
_version_dictionary_template +=
"chrome_high_version_code = \"@CHROME_HIGH_VERSION_CODE@\" "
_version_dictionary_template +=
@@ -231,16 +231,16 @@ if (is_mac) {
chrome_version_name = chrome_version_full
# There is a different version code only for arm64.
- if (is_high_end_android && target_cpu != "arm64") {
+ if (is_high_end_android && target_cpu == "x64") {
trichrome_64_32_high_beta_version_code = trichrome_64_32_beta_version_code
trichrome_64_32_high_version_code = trichrome_64_32_version_code
trichrome_auto_64_32_high_version_code = trichrome_auto_64_32_version_code
webview_64_32_high_beta_version_code = webview_64_32_beta_version_code
webview_64_32_high_stable_version_code = webview_64_32_stable_version_code
webview_auto_64_32_high_version_code = webview_auto_64_32_version_code
- chrome_high_version_code = chrome_version_code
- chrome_high_beta_version_code = chrome_beta_version_code
}
+ chrome_high_version_code = chrome_version_code
+ chrome_high_beta_version_code = chrome_beta_version_code
}
if (is_android && current_toolchain == default_toolchain) {
diff --git a/components/viz/common/features.cc b/components/viz/common/features.cc
--- a/components/viz/common/features.cc
+++ b/components/viz/common/features.cc
@@ -161,6 +161,7 @@ BASE_FEATURE(kWebViewNewInvalidateHeuristic, base::FEATURE_ENABLED_BY_DEFAULT);
BASE_FEATURE(kWebViewNewInvalidateHeuristicForTV,
base::FEATURE_DISABLED_BY_DEFAULT);
+SET_CROMITE_FEATURE_ENABLED(kWebViewEnableADPFRendererMain);
// If enabled and the device's SOC manufacturer is in the allowlist, WebView
// reports the set of threads involved in frame production to HWUI, and they're
@@ -241,6 +242,7 @@ BASE_FEATURE(kEnableADPFRendererMain, base::FEATURE_ENABLED_BY_DEFAULT);
// If enabled, Chrome puts Renderer Main threads into a separate
// ADPF(Android Dynamic Performance Framework) hint session, and does not
// report any timing hints from this session.
+// see https://source.chromium.org/chromium/chromium/src/+/e7507d15614ac7f499fb89086b3a09772fa8deb4
BASE_FEATURE(kEnableADPFSeparateRendererMainSession,
base::FEATURE_DISABLED_BY_DEFAULT);
diff --git a/components/viz/service/performance_hint/hint_session.cc b/components/viz/service/performance_hint/hint_session.cc
--- a/components/viz/service/performance_hint/hint_session.cc
+++ b/components/viz/service/performance_hint/hint_session.cc
@@ -437,16 +437,13 @@ bool IsAdpfEnabled() {
switches::kDisableAdpf)) {
return false;
}
- if (base::android::android_info::sdk_int() <
- base::android::android_info::SDK_VERSION_S) {
- return false;
- }
if (!AdpfMethods::Get().supported) {
return false;
}
if (!base::FeatureList::IsEnabled(features::kAdpf)) {
return false;
}
+ if ((true)) return true;
std::string soc_allowlist = features::kADPFSocManufacturerAllowlist.Get();
std::string soc = base::SysInfo::SocManufacturer();
--