# 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("//build/config/chromeos/rules.gni") assert(is_chromeos) 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" ] } }