162306a36Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0 262306a36Sopenharmony_ci 362306a36Sopenharmony_ciKASAN_SANITIZE := n 462306a36Sopenharmony_ciKCSAN_SANITIZE := n 562306a36Sopenharmony_ci 662306a36Sopenharmony_citargets += trampoline_$(BITS).o purgatory.ro 762306a36Sopenharmony_ci 862306a36Sopenharmony_ci# When profile-guided optimization is enabled, llvm emits two different 962306a36Sopenharmony_ci# overlapping text sections, which is not supported by kexec. Remove profile 1062306a36Sopenharmony_ci# optimization flags. 1162306a36Sopenharmony_ciKBUILD_CFLAGS := $(filter-out -fprofile-sample-use=% -fprofile-use=%,$(KBUILD_CFLAGS)) 1262306a36Sopenharmony_ci 1362306a36Sopenharmony_ciLDFLAGS_purgatory.ro := -e purgatory_start -r --no-undefined 1462306a36Sopenharmony_ci 1562306a36Sopenharmony_ci$(obj)/purgatory.ro: $(obj)/trampoline_$(BITS).o FORCE 1662306a36Sopenharmony_ci $(call if_changed,ld) 1762306a36Sopenharmony_ci 1862306a36Sopenharmony_ci$(obj)/kexec-purgatory.o: $(obj)/purgatory.ro 1962306a36Sopenharmony_ci 2062306a36Sopenharmony_ciobj-y += kexec-purgatory.o 21