fdo.mk revision 25671e15cc1b199ca693f95864ab93a63909a526
1# 2# Copyright (C) 2006 The Android Open Source Project 3# 4# Licensed under the Apache License, Version 2.0 (the "License"); 5# you may not use this file except in compliance with the License. 6# You may obtain a copy of the License at 7# 8# http://www.apache.org/licenses/LICENSE-2.0 9# 10# Unless required by applicable law or agreed to in writing, software 11# distributed under the License is distributed on an "AS IS" BASIS, 12# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13# See the License for the specific language governing permissions and 14# limitations under the License. 15# 16 17# Setup FDO related flags. 18 19$(combo_2nd_arch_prefix)TARGET_FDO_CFLAGS:= 20$(combo_2nd_arch_prefix)TARGET_FDO_LIB:= 21 22ifneq ($(strip $(BUILD_FDO_INSTRUMENT)),) 23 # Set BUILD_FDO_INSTRUMENT=true to turn on FDO instrumentation. 24 # The profile will be generated on /data/local/tmp/profile on the device. 25 $(combo_2nd_arch_prefix)TARGET_FDO_CFLAGS := -fprofile-generate=/data/local/tmp/fdo_profile -DANDROID_FDO 26 $(combo_2nd_arch_prefix)TARGET_FDO_LIB := $(target_libgcov) 27else 28 ifneq ($(strip $(BUILD_FDO_OPTIMIZE)),) 29 # Set TARGET_FDO_PROFILE_PATH to set a custom profile directory for your build. 30 ifeq ($(strip $($(combo_2nd_arch_prefix)TARGET_FDO_PROFILE_PATH)),) 31 $(combo_2nd_arch_prefix)TARGET_FDO_PROFILE_PATH := fdo_profiles 32 endif 33 34 ifneq ($(strip $(wildcard $($(combo_2nd_arch_prefix)TARGET_FDO_PROFILE_PATH))),) 35 $(combo_2nd_arch_prefix)TARGET_FDO_CFLAGS := -fprofile-use=$($(combo_2nd_arch_prefix)TARGET_FDO_PROFILE_PATH) -DANDROID_FDO -fprofile-correction -Wcoverage-mismatch -Wno-error 36 $(combo_2nd_arch_prefix)TARGET_FDO_LIB := $(target_libgcov) 37 else 38 $(warning Profile directory $($(combo_2nd_arch_prefix)TARGET_FDO_PROFILE_PATH) does not exist. Turn off FDO.) 39 endif 40 endif 41endif 42