mirror of
https://github.com/apache/nuttx.git
synced 2026-05-12 01:42:49 +08:00
d5db7d1cee
Optimize crc32 standard(poly:0x04C11DB7) and crc32 castagnoli(poly:0x1EDC6F41) with arm crc32 extension instructions. For example, crc32 standard caculates(lookup crc32 table) 1812 bytes data, reduced the time from 118 us to 14 us through optimization. Performance improved ~700% Signed-off-by: Jinliang Li <lijinliang1@lixiang.com>
41 lines
880 B
Plaintext
41 lines
880 B
Plaintext
#
|
|
# For a description of the syntax of this configuration file,
|
|
# see the file kconfig-language.txt in the NuttX tools repository.
|
|
#
|
|
|
|
if ARCH_ARM7TDMI || ARCH_ARM920T || ARCH_ARM926EJS || \
|
|
ARCH_ARM1136J || ARCH_ARM1156T2 || ARCH_ARM1176JZ
|
|
source "libs/libc/machine/arm/arm/Kconfig"
|
|
endif
|
|
|
|
if ARCH_ARMV7A
|
|
source "libs/libc/machine/arm/armv7-a/Kconfig"
|
|
endif
|
|
|
|
if ARCH_ARMV7R
|
|
source "libs/libc/machine/arm/armv7-r/Kconfig"
|
|
endif
|
|
|
|
if ARCH_ARMV6M
|
|
source "libs/libc/machine/arm/armv6-m/Kconfig"
|
|
endif
|
|
|
|
if ARCH_ARMV7M
|
|
source "libs/libc/machine/arm/armv7-m/Kconfig"
|
|
endif
|
|
|
|
if ARCH_ARMV8M
|
|
source "libs/libc/machine/arm/armv8-m/Kconfig"
|
|
endif
|
|
|
|
if ARCH_ARMV8R
|
|
source "libs/libc/machine/arm/armv8-r/Kconfig"
|
|
endif
|
|
|
|
config LIBC_ARCH_CRC32
|
|
bool "Enable optimized crc32 for ARM"
|
|
default n
|
|
depends on ARCH_HAVE_CRC32
|
|
---help---
|
|
Enable optimized arm neon specific crc32 library function
|