1# SPDX-License-Identifier: GPL-2.0 2 3ccflags-y += -I $(src) 4 5obj-$(CONFIG_XOR_BLOCKS) += xor.o 6 7xor-y += xor-core.o 8xor-y += xor-8regs.o 9xor-y += xor-32regs.o 10xor-y += xor-8regs-prefetch.o 11xor-y += xor-32regs-prefetch.o 12 13ifeq ($(CONFIG_XOR_BLOCKS_ARCH),y) 14CFLAGS_xor-core.o += -I$(src)/$(SRCARCH) 15endif 16 17xor-$(CONFIG_ALPHA) += alpha/xor.o 18xor-$(CONFIG_ARM) += arm/xor.o 19ifeq ($(CONFIG_ARM),y) 20xor-$(CONFIG_KERNEL_MODE_NEON) += arm/xor-neon.o arm/xor-neon-glue.o 21endif 22xor-$(CONFIG_ARM64) += arm64/xor-neon.o arm64/xor-neon-glue.o 23xor-$(CONFIG_CPU_HAS_LSX) += loongarch/xor_simd.o 24xor-$(CONFIG_CPU_HAS_LSX) += loongarch/xor_simd_glue.o 25xor-$(CONFIG_ALTIVEC) += powerpc/xor_vmx.o powerpc/xor_vmx_glue.o 26xor-$(CONFIG_RISCV_ISA_V) += riscv/xor.o riscv/xor-glue.o 27xor-$(CONFIG_SPARC32) += sparc/xor-sparc32.o 28xor-$(CONFIG_SPARC64) += sparc/xor-sparc64.o sparc/xor-sparc64-glue.o 29xor-$(CONFIG_S390) += s390/xor.o 30xor-$(CONFIG_X86_32) += x86/xor-avx.o x86/xor-sse.o x86/xor-mmx.o 31xor-$(CONFIG_X86_64) += x86/xor-avx.o x86/xor-sse.o 32 33 34CFLAGS_arm/xor-neon.o += $(CC_FLAGS_FPU) 35CFLAGS_REMOVE_arm/xor-neon.o += $(CC_FLAGS_NO_FPU) 36 37CFLAGS_arm64/xor-neon.o += $(CC_FLAGS_FPU) 38CFLAGS_REMOVE_arm64/xor-neon.o += $(CC_FLAGS_NO_FPU) 39 40CFLAGS_powerpc/xor_vmx.o += -mhard-float -maltivec \ 41 $(call cc-option,-mabi=altivec) \ 42 -isystem $(shell $(CC) -print-file-name=include) 43