Add global option filtering for FDO builds.
Change-Id: I95e797f7f5945bb34061d17e49156ca8c8a19854
(cherry picked from commit c7ed00fc00
)
This commit is contained in:
parent
6bef5124b7
commit
295a6d27f6
1 changed files with 19 additions and 2 deletions
|
@ -184,9 +184,11 @@ endif
|
||||||
|
|
||||||
my_compiler_dependencies :=
|
my_compiler_dependencies :=
|
||||||
|
|
||||||
####################################################
|
##################################################################
|
||||||
## Add FDO flags if FDO is turned on and supported
|
## Add FDO flags if FDO is turned on and supported
|
||||||
####################################################
|
## Please note that we will do option filtering during FDO build.
|
||||||
|
## i.e. Os->O2, remove -fno-early-inline and -finline-limit.
|
||||||
|
##################################################################
|
||||||
ifeq ($(strip $(LOCAL_FDO_SUPPORT)), true)
|
ifeq ($(strip $(LOCAL_FDO_SUPPORT)), true)
|
||||||
ifeq ($(strip $(LOCAL_IS_HOST_MODULE)),)
|
ifeq ($(strip $(LOCAL_IS_HOST_MODULE)),)
|
||||||
my_cflags += $($(LOCAL_2ND_ARCH_VAR_PREFIX)TARGET_FDO_CFLAGS)
|
my_cflags += $($(LOCAL_2ND_ARCH_VAR_PREFIX)TARGET_FDO_CFLAGS)
|
||||||
|
@ -923,6 +925,21 @@ my_asflags := $(call $(LOCAL_2ND_ARCH_VAR_PREFIX)convert-to-$(my_host)clang-flag
|
||||||
my_ldflags := $(call $(LOCAL_2ND_ARCH_VAR_PREFIX)convert-to-$(my_host)clang-flags,$(my_ldflags))
|
my_ldflags := $(call $(LOCAL_2ND_ARCH_VAR_PREFIX)convert-to-$(my_host)clang-flags,$(my_ldflags))
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
ifeq ($(LOCAL_FDO_SUPPORT), true)
|
||||||
|
build_with_fdo := false
|
||||||
|
ifeq ($(BUILD_FDO_INSTRUMENT), true)
|
||||||
|
build_with_fdo := true
|
||||||
|
endif
|
||||||
|
ifeq ($(BUILD_FDO_OPTIMIZE), true)
|
||||||
|
build_with_fdo := true
|
||||||
|
endif
|
||||||
|
ifeq ($(build_with_fdo), true)
|
||||||
|
my_cflags := $(patsubst -Os,-O2,$(my_cflags))
|
||||||
|
fdo_incompatible_flags=-fno-early-inlining -finline-limit=%
|
||||||
|
my_cflags := $(filter-out $(fdo_incompatible_flags),$(my_cflags))
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
$(LOCAL_INTERMEDIATE_TARGETS): PRIVATE_YACCFLAGS := $(LOCAL_YACCFLAGS)
|
$(LOCAL_INTERMEDIATE_TARGETS): PRIVATE_YACCFLAGS := $(LOCAL_YACCFLAGS)
|
||||||
$(LOCAL_INTERMEDIATE_TARGETS): PRIVATE_ASFLAGS := $(my_asflags)
|
$(LOCAL_INTERMEDIATE_TARGETS): PRIVATE_ASFLAGS := $(my_asflags)
|
||||||
$(LOCAL_INTERMEDIATE_TARGETS): PRIVATE_CONLYFLAGS := $(LOCAL_CONLYFLAGS)
|
$(LOCAL_INTERMEDIATE_TARGETS): PRIVATE_CONLYFLAGS := $(LOCAL_CONLYFLAGS)
|
||||||
|
|
Loading…
Reference in a new issue