Commit 96581eeb authored by Sebastien Marchand's avatar Sebastien Marchand Committed by Commit Bot

Add synthetic field trial group for Clang PGO

Bug: 1060025
Change-Id: I9e855b0f9290a0ac4785f88657d47d19ce250efb
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2159533Reviewed-by: default avatarNico Weber <thakis@chromium.org>
Reviewed-by: default avatarAlexei Svitkine <asvitkine@chromium.org>
Commit-Queue: Sébastien Marchand <sebmarchand@chromium.org>
Cr-Commit-Position: refs/heads/master@{#761174}
parent 04d64665
......@@ -6,6 +6,7 @@ import("//base/allocator/allocator.gni")
import("//build/buildflag_header.gni")
import("//build/config/buildflags_paint_preview.gni")
import("//build/config/chrome_build.gni")
import("//build/config/compiler/pgo/pgo.gni")
import("//build/config/crypto.gni")
import("//build/config/features.gni")
import("//build/config/jumbo.gni")
......@@ -69,7 +70,10 @@ if (is_win) {
buildflag_header("buildflags") {
header = "buildflags.h"
flags = [ "ENABLE_KALEIDOSCOPE=$enable_kaleidoscope" ]
flags = [
"CLANG_PGO=$chrome_pgo_phase",
"ENABLE_KALEIDOSCOPE=$enable_kaleidoscope",
]
}
# This proto library is used for non-android NTPs below.
......
......@@ -25,8 +25,10 @@
#include "build/build_config.h"
#include "chrome/browser/about_flags.h"
#include "chrome/browser/browser_process.h"
#include "chrome/browser/buildflags.h"
#include "chrome/browser/chrome_browser_main.h"
#include "chrome/browser/metrics/bluetooth_available_utility.h"
#include "chrome/browser/metrics/chrome_metrics_service_accessor.h"
#include "chrome/browser/metrics/process_memory_metrics_emitter.h"
#include "chrome/browser/shell_integration.h"
#include "components/flags_ui/pref_service_flags_storage.h"
......@@ -537,6 +539,15 @@ void ChromeBrowserMainExtraPartsMetrics::PreBrowserStart() {
flags_ui::PrefServiceFlagsStorage flags_storage(
g_browser_process->local_state());
about_flags::RecordUMAStatistics(&flags_storage);
// Log once here at browser start rather than at each renderer launch.
ChromeMetricsServiceAccessor::RegisterSyntheticFieldTrial("ClangPGO",
#if BUILDFLAG(CLANG_PGO)
"Enabled"
#else
"Disabled"
#endif
);
}
void ChromeBrowserMainExtraPartsMetrics::PostBrowserStart() {
......
......@@ -86,6 +86,8 @@ class ChromeMetricsServiceAccessor : public metrics::MetricsServiceAccessor {
friend class ::CrashesDOMHandler;
friend class ::FlashDOMHandler;
friend class ChromeBrowserFieldTrials;
// For ClangPGO.
friend class ChromeBrowserMainExtraPartsMetrics;
// For StackSamplingConfiguration.
friend class ChromeBrowserMainParts;
friend class ChromeContentBrowserClient;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment