34 lines
1.1 KiB
Text
34 lines
1.1 KiB
Text
# Copyright 2019 The Chromium Authors. All rights reserved.
|
|
# Use of this source code is governed by a BSD-style license that can be
|
|
# found in the LICENSE file.
|
|
|
|
import("//chromium/build/config/chromeos/ui_mode.gni")
|
|
|
|
assert(is_chromeos_ash)
|
|
|
|
declare_args() {
|
|
# The location to a file used to dump symbols ordered by Call-Chain Clustering (C3)
|
|
# https://research.fb.com/wp-content/uploads/2017/01/cgo2017-hfsort-final1.pdf?
|
|
# to a file, used for generating orderfiles in Chrome OS
|
|
dump_call_chain_clustering_order = ""
|
|
}
|
|
|
|
declare_args() {
|
|
# Whether or not we're using new pass manager to build and link Chrome
|
|
use_new_pass_manager = dump_call_chain_clustering_order != ""
|
|
}
|
|
|
|
config("print_orderfile") {
|
|
if (dump_call_chain_clustering_order != "") {
|
|
_output_orderfile =
|
|
rebase_path(dump_call_chain_clustering_order, root_build_dir)
|
|
ldflags = [ "-Wl,--print-symbol-order=$_output_orderfile" ]
|
|
}
|
|
}
|
|
|
|
config("compiler") {
|
|
if (use_new_pass_manager) {
|
|
cflags = [ "-fexperimental-new-pass-manager" ]
|
|
ldflags = [ "-fexperimental-new-pass-manager" ]
|
|
}
|
|
}
|