125671e15cc1b199ca693f95864ab93a63909a526Dehao Chen#
225671e15cc1b199ca693f95864ab93a63909a526Dehao Chen# Copyright (C) 2006 The Android Open Source Project
325671e15cc1b199ca693f95864ab93a63909a526Dehao Chen#
425671e15cc1b199ca693f95864ab93a63909a526Dehao Chen# Licensed under the Apache License, Version 2.0 (the "License");
525671e15cc1b199ca693f95864ab93a63909a526Dehao Chen# you may not use this file except in compliance with the License.
625671e15cc1b199ca693f95864ab93a63909a526Dehao Chen# You may obtain a copy of the License at
725671e15cc1b199ca693f95864ab93a63909a526Dehao Chen#
825671e15cc1b199ca693f95864ab93a63909a526Dehao Chen#      http://www.apache.org/licenses/LICENSE-2.0
925671e15cc1b199ca693f95864ab93a63909a526Dehao Chen#
1025671e15cc1b199ca693f95864ab93a63909a526Dehao Chen# Unless required by applicable law or agreed to in writing, software
1125671e15cc1b199ca693f95864ab93a63909a526Dehao Chen# distributed under the License is distributed on an "AS IS" BASIS,
1225671e15cc1b199ca693f95864ab93a63909a526Dehao Chen# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1325671e15cc1b199ca693f95864ab93a63909a526Dehao Chen# See the License for the specific language governing permissions and
1425671e15cc1b199ca693f95864ab93a63909a526Dehao Chen# limitations under the License.
1525671e15cc1b199ca693f95864ab93a63909a526Dehao Chen#
1625671e15cc1b199ca693f95864ab93a63909a526Dehao Chen
1725671e15cc1b199ca693f95864ab93a63909a526Dehao Chen# Setup FDO related flags.
1825671e15cc1b199ca693f95864ab93a63909a526Dehao Chen
1925671e15cc1b199ca693f95864ab93a63909a526Dehao Chen$(combo_2nd_arch_prefix)TARGET_FDO_CFLAGS:=
2025671e15cc1b199ca693f95864ab93a63909a526Dehao Chen
2145d0143ab1155ff33c3ad63ca19a64d7f69086f4Ying Wang# Set BUILD_FDO_INSTRUMENT=true to turn on FDO instrumentation.
2245d0143ab1155ff33c3ad63ca19a64d7f69086f4Ying Wang# The profile will be generated on /sdcard/fdo_profile on the device.
2345d0143ab1155ff33c3ad63ca19a64d7f69086f4Ying Wang$(combo_2nd_arch_prefix)TARGET_FDO_INSTRUMENT_CFLAGS := -fprofile-generate=/sdcard/fdo_profile -DANDROID_FDO
2445d0143ab1155ff33c3ad63ca19a64d7f69086f4Ying Wang$(combo_2nd_arch_prefix)TARGET_FDO_INSTRUMENT_LDFLAGS := -lgcov -lgcc
2525671e15cc1b199ca693f95864ab93a63909a526Dehao Chen
2645d0143ab1155ff33c3ad63ca19a64d7f69086f4Ying Wang# Set TARGET_FDO_PROFILE_PATH to set a custom profile directory for your build.
2745d0143ab1155ff33c3ad63ca19a64d7f69086f4Ying Wangifeq ($(strip $($(combo_2nd_arch_prefix)TARGET_FDO_PROFILE_PATH)),)
2845d0143ab1155ff33c3ad63ca19a64d7f69086f4Ying Wang  $(combo_2nd_arch_prefix)TARGET_FDO_PROFILE_PATH := vendor/google_data/fdo_profile
2925671e15cc1b199ca693f95864ab93a63909a526Dehao Chenendif
3045d0143ab1155ff33c3ad63ca19a64d7f69086f4Ying Wang
3145d0143ab1155ff33c3ad63ca19a64d7f69086f4Ying Wang$(combo_2nd_arch_prefix)TARGET_FDO_OPTIMIZE_CFLAGS := \
3245d0143ab1155ff33c3ad63ca19a64d7f69086f4Ying Wang    -fprofile-use=$($(combo_2nd_arch_prefix)TARGET_FDO_PROFILE_PATH) \
3345d0143ab1155ff33c3ad63ca19a64d7f69086f4Ying Wang    -DANDROID_FDO -fprofile-correction -Wcoverage-mismatch -Wno-error
34