# Copyright (c) 2021 HAW Hamburg # # This file is subject to the terms and conditions of the GNU Lesser # General Public License v2.1. See the file LICENSE in the top level # directory for more details. # menuconfig PACKAGE_LIBFIXMATH bool "Fixed Point Math package" depends on TEST_KCONFIG if PACKAGE_LIBFIXMATH config MODULE_LIBFIXMATH bool "Fixed Point Math module" config MODULE_LIBFIXMATH_UNITTESTS bool "Fixed Point Math unittests" depends on !HAS_ARCH_8BIT depends on !HAS_MSP430 menu "Accuracy" config FIXMATH_NO_ROUNDING bool "Disable rounding" help Say y to disable rounding. Results may round randomly up or down, i.e. their accuracy is +-1. Runs slightly faster. config FIXMATH_NO_OVERFLOW bool "Disable overflow detection" help Say y to disable overflow detection and saturating arithmetic support. Overflowing computations will give garbage results. Runs slightly faster. endmenu menu "Platform" config FIXMATH_NO_64BIT bool "Disable use of uint64_t" help Say y to disable use of uint64_t in the code. Meant for compilers that do not have 64-bit support. Runs the same speed or slightly slower. config FIXMATH_OPTIMIZE_8BIT bool "Optimize for 8-bit architectures" default y if HAS_ARCH_8BIT help Say y to use variants of the functions that are suitable for small 8- and 16-bit processors. Much faster on those processors, much slower on 32-bit processors. config FIXMATH_NO_CACHE bool "Do not use cache" default y help Say y to avoid using cache for exp etc. function results. Uses less RAM, runs slightly slower. endmenu menu "Algorithms" config FIXMATH_SIN_LUT bool "Use sin look-up table generated by fixsingen" help Say y to use a look-up table generated by the fixsingen tool from svn, it is faster on some devices but the lookup table takes up ~200KiB (205376 bytes) in memory and can be slower depending on usage. config FIXMATH_FAST_SIN bool "Fast sin approximation" help Say y to enable a faster but less accurate approximation of the sin function, for code where accuracy isn't as important such as games logic or graphics rendering then this is often a worthwhile tradeoff. endmenu endif # PACKAGE_LIBFIXMATH