spl: lift 64-bit math compat out to separate file

It's a lot of rarely-compiled code, so move it to the side to make other
code easier to read.

Sponsored-by: https://despairlabs.com/sponsor/
Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Reviewed-by: Alexander Motin <alexander.motin@TrueNAS.com>
Signed-off-by: Rob Norris <robn@despairlabs.com>
Closes #18117
This commit is contained in:
Rob Norris
2026-01-02 23:02:24 +11:00
committed by Brian Behlendorf
parent 2ca6e880da
commit 662f33f323
3 changed files with 283 additions and 258 deletions
+8
View File
@@ -48,6 +48,13 @@ CFLAGS_zfs/zap_micro.o += -mllvm -x86-cmov-converter=false
endif
endif
# These are internal functions for 64-bit math on 32-bit platforms. The
# compiler will generate references to them if necessary, to be resolved at
# link time. We don't need or provide prototypes for them, so we disable
# warnings that would complain about them.
CFLAGS_REMOVE_os/linux/spl/spl-math-compat.o += -Wmissing-prototypes
CFLAGS_REMOVE_os/linux/spl/spl-math-compat.o += -Wmissing-declarations
ifneq ($(KBUILD_EXTMOD),)
@CONFIG_QAT_TRUE@ZFS_MODULE_CFLAGS += -I@QAT_SRC@/include
@CONFIG_QAT_TRUE@KBUILD_EXTRA_SYMBOLS += @QAT_SYMBOLS@
@@ -76,6 +83,7 @@ SPL_OBJS := \
spl-kmem-cache.o \
spl-kmem.o \
spl-kstat.o \
spl-math-compat.o \
spl-proc.o \
spl-procfs-list.o \
spl-shrinker.o \