This is an automated email from the ASF dual-hosted git repository.

xiaoxiang pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/nuttx.git


The following commit(s) were added to refs/heads/master by this push:
     new fb74c46e4d arm64/gnu:Set arch_* optimizations to be on by default.
fb74c46e4d is described below

commit fb74c46e4d86db3ec7bf5dadd503a9dfd7cdb62c
Author: chenrun1 <[email protected]>
AuthorDate: Fri May 12 20:54:10 2023 +0800

    arm64/gnu:Set arch_* optimizations to be on by default.
    
    Signed-off-by: chenrun1 <[email protected]>
---
 boards/arm64/fvp-v8r/fvp-armv8r/configs/nsh/defconfig  |  1 +
 .../arm64/fvp-v8r/fvp-armv8r/configs/nsh_smp/defconfig |  1 +
 boards/arm64/qemu/qemu-armv8a/configs/fb/defconfig     |  1 +
 boards/arm64/qemu/qemu-armv8a/configs/nsh/defconfig    |  1 +
 .../arm64/qemu/qemu-armv8a/configs/nsh_smp/defconfig   |  1 +
 libs/libc/machine/arm/armv7-a/Kconfig                  | 11 +++++++++++
 libs/libc/machine/arm/armv7-m/Kconfig                  | 11 +++++++++++
 libs/libc/machine/arm/armv7-r/Kconfig                  | 11 +++++++++++
 libs/libc/machine/arm/armv8-m/Kconfig                  | 11 +++++++++++
 libs/libc/machine/arm64/Kconfig                        | 18 ++++++++++++++++++
 libs/libc/machine/risc-v/Kconfig                       |  8 ++++++++
 libs/libc/machine/xtensa/Kconfig                       | 11 +++++++++++
 12 files changed, 86 insertions(+)

diff --git a/boards/arm64/fvp-v8r/fvp-armv8r/configs/nsh/defconfig 
b/boards/arm64/fvp-v8r/fvp-armv8r/configs/nsh/defconfig
index bf1a985d2f..1727a62906 100644
--- a/boards/arm64/fvp-v8r/fvp-armv8r/configs/nsh/defconfig
+++ b/boards/arm64/fvp-v8r/fvp-armv8r/configs/nsh/defconfig
@@ -14,6 +14,7 @@ CONFIG_ARCH_CHIP_FVP_ARMV8R=y
 CONFIG_ARCH_CHIP_FVP_R82=y
 CONFIG_ARCH_EARLY_PRINT=y
 CONFIG_ARCH_INTERRUPTSTACK=4096
+CONFIG_ARM64_STRING_FUNCTION=y
 CONFIG_BUILTIN=y
 CONFIG_DEBUG_ASSERTIONS=y
 CONFIG_DEBUG_ERROR=y
diff --git a/boards/arm64/fvp-v8r/fvp-armv8r/configs/nsh_smp/defconfig 
b/boards/arm64/fvp-v8r/fvp-armv8r/configs/nsh_smp/defconfig
index ea25788059..9edb10cb28 100644
--- a/boards/arm64/fvp-v8r/fvp-armv8r/configs/nsh_smp/defconfig
+++ b/boards/arm64/fvp-v8r/fvp-armv8r/configs/nsh_smp/defconfig
@@ -14,6 +14,7 @@ CONFIG_ARCH_CHIP_FVP_ARMV8R=y
 CONFIG_ARCH_CHIP_FVP_R82=y
 CONFIG_ARCH_EARLY_PRINT=y
 CONFIG_ARCH_INTERRUPTSTACK=4096
+CONFIG_ARM64_STRING_FUNCTION=y
 CONFIG_BUILTIN=y
 CONFIG_DEBUG_ASSERTIONS=y
 CONFIG_DEBUG_ERROR=y
diff --git a/boards/arm64/qemu/qemu-armv8a/configs/fb/defconfig 
b/boards/arm64/qemu/qemu-armv8a/configs/fb/defconfig
index 1103129ba8..790520f24c 100644
--- a/boards/arm64/qemu/qemu-armv8a/configs/fb/defconfig
+++ b/boards/arm64/qemu/qemu-armv8a/configs/fb/defconfig
@@ -15,6 +15,7 @@ CONFIG_ARCH_CHIP="qemu"
 CONFIG_ARCH_CHIP_QEMU=y
 CONFIG_ARCH_CHIP_QEMU_A53=y
 CONFIG_ARCH_INTERRUPTSTACK=4096
+CONFIG_ARM64_STRING_FUNCTION=y
 CONFIG_BUILTIN=y
 CONFIG_DEBUG_FULLOPT=y
 CONFIG_DEBUG_SYMBOLS=y
diff --git a/boards/arm64/qemu/qemu-armv8a/configs/nsh/defconfig 
b/boards/arm64/qemu/qemu-armv8a/configs/nsh/defconfig
index b3e6fb0aec..a867661cfe 100644
--- a/boards/arm64/qemu/qemu-armv8a/configs/nsh/defconfig
+++ b/boards/arm64/qemu/qemu-armv8a/configs/nsh/defconfig
@@ -16,6 +16,7 @@ CONFIG_ARCH_EARLY_PRINT=y
 CONFIG_ARCH_INTERRUPTSTACK=4096
 CONFIG_ARM64_SEMIHOSTING_HOSTFS=y
 CONFIG_ARM64_SEMIHOSTING_HOSTFS_CACHE_COHERENCE=y
+CONFIG_ARM64_STRING_FUNCTION=y
 CONFIG_BUILTIN=y
 CONFIG_DEBUG_ASSERTIONS=y
 CONFIG_DEBUG_ERROR=y
diff --git a/boards/arm64/qemu/qemu-armv8a/configs/nsh_smp/defconfig 
b/boards/arm64/qemu/qemu-armv8a/configs/nsh_smp/defconfig
index 307fb19e21..f0679b106a 100644
--- a/boards/arm64/qemu/qemu-armv8a/configs/nsh_smp/defconfig
+++ b/boards/arm64/qemu/qemu-armv8a/configs/nsh_smp/defconfig
@@ -14,6 +14,7 @@ CONFIG_ARCH_CHIP_QEMU=y
 CONFIG_ARCH_CHIP_QEMU_A53=y
 CONFIG_ARCH_EARLY_PRINT=y
 CONFIG_ARCH_INTERRUPTSTACK=8192
+CONFIG_ARM64_STRING_FUNCTION=y
 CONFIG_BUILTIN=y
 CONFIG_DEBUG_ASSERTIONS=y
 CONFIG_DEBUG_ERROR=y
diff --git a/libs/libc/machine/arm/armv7-a/Kconfig 
b/libs/libc/machine/arm/armv7-a/Kconfig
index f3bae712ad..60e3fa661c 100644
--- a/libs/libc/machine/arm/armv7-a/Kconfig
+++ b/libs/libc/machine/arm/armv7-a/Kconfig
@@ -3,6 +3,17 @@
 # see the file kconfig-language.txt in the NuttX tools repository.
 #
 
+config ARMV7A_STRING_FUNCTION
+       bool "Enable optimized ARMv7M specific string function"
+       default n
+       depends on ARCH_TOOLCHAIN_GNU
+       select ARMV7A_MEMCHR
+       select ARMV7A_MEMCPY
+       select ARMV7A_MEMMOVE
+       select ARMV7A_MEMSET
+       select ARMV7A_STRCMP
+       select ARMV7A_STRLEN
+
 config ARMV7A_MEMCHR
        bool "Enable optimized memchr() for ARMv7-A"
        default n
diff --git a/libs/libc/machine/arm/armv7-m/Kconfig 
b/libs/libc/machine/arm/armv7-m/Kconfig
index 10ab6ee02a..b837c6b523 100644
--- a/libs/libc/machine/arm/armv7-m/Kconfig
+++ b/libs/libc/machine/arm/armv7-m/Kconfig
@@ -5,6 +5,17 @@
 
 if ARCH_ARMV7M
 
+config ARMV7M_STRING_FUNCTION
+       bool "Enable optimized ARMv7M specific string function"
+       default n
+       depends on ARCH_TOOLCHAIN_GNU
+       select ARMV7M_MEMCHR
+       select ARMV7M_MEMCPY
+       select ARMV7M_MEMSET
+       select ARMV7M_MEMMOVE
+       select ARMV7M_STRCMP
+       select ARMV7M_STRLEN
+
 config ARMV7M_MEMCHR
        bool "Enable optimized memchr() for ARMv7-M"
        default n
diff --git a/libs/libc/machine/arm/armv7-r/Kconfig 
b/libs/libc/machine/arm/armv7-r/Kconfig
index dd4bed8c88..f80622c4ec 100644
--- a/libs/libc/machine/arm/armv7-r/Kconfig
+++ b/libs/libc/machine/arm/armv7-r/Kconfig
@@ -3,6 +3,17 @@
 # see the file kconfig-language.txt in the NuttX tools repository.
 #
 
+config ARMV7R_STRING_FUNCTION
+       bool "Enable optimized ARMv7R specific string function"
+       default n
+       depends on ARCH_TOOLCHAIN_GNU
+       select ARMV7R_MEMCHR
+       select ARMV7R_MEMCPY
+       select ARMV7R_MEMMOVE
+       select ARMV7R_MEMSET
+       select ARMV7R_STRCMP
+       select ARMV7R_STRLEN
+
 config ARMV7R_MEMCHR
        bool "Enable optimized memchr() for ARMv7-R"
        default n
diff --git a/libs/libc/machine/arm/armv8-m/Kconfig 
b/libs/libc/machine/arm/armv8-m/Kconfig
index 2d52a8322a..2d27574986 100644
--- a/libs/libc/machine/arm/armv8-m/Kconfig
+++ b/libs/libc/machine/arm/armv8-m/Kconfig
@@ -5,6 +5,17 @@
 
 if ARCH_ARMV8M
 
+config ARMV8M_STRING_FUNCTION
+       bool "Enable optimized ARMv8M specific string function"
+       default n
+       depends on ARCH_TOOLCHAIN_GNU
+       select ARMV8M_MEMCHR
+       select ARMV8M_MEMCPY
+       select ARMV8M_MEMSET
+       select ARMV8M_STRCMP
+       select ARMV8M_STRCMP
+       select ARMV8M_STRLEN
+
 config ARMV8M_MEMCHR
        bool "Enable optimized memchr() for ARMv8-M"
        default n
diff --git a/libs/libc/machine/arm64/Kconfig b/libs/libc/machine/arm64/Kconfig
index 2b7bc703c7..6c83e6406f 100644
--- a/libs/libc/machine/arm64/Kconfig
+++ b/libs/libc/machine/arm64/Kconfig
@@ -3,6 +3,24 @@
 # see the file kconfig-language.txt in the NuttX tools repository.
 #
 
+config ARM64_STRING_FUNCTION
+       bool "Enable optimized ARM64 specific string function"
+       default n
+       depends on ARCH_TOOLCHAIN_GNU
+       select ARM64_MEMCHR
+       select ARM64_MEMCMP
+       select ARM64_MEMCPY
+       select ARM64_MEMSET
+       select ARM64_MEMMOVE
+       select ARM64_STRCHR
+       select ARM64_STRCHRNUL
+       select ARM64_STRCMP
+       select ARM64_STRCPY
+       select ARM64_STRLEN
+       select ARM64_STRNCMP
+       select ARM64_STRNLEN
+       select ARM64_STRRCHR
+
 config ARM64_MEMCHR
        bool "Enable optimized memchr() for ARM64"
        default n
diff --git a/libs/libc/machine/risc-v/Kconfig b/libs/libc/machine/risc-v/Kconfig
index 39a5f9259c..2e1dc8ff37 100644
--- a/libs/libc/machine/risc-v/Kconfig
+++ b/libs/libc/machine/risc-v/Kconfig
@@ -3,6 +3,14 @@
 # see the file kconfig-language.txt in the NuttX tools repository.
 #
 
+config RISCV_STRING_FUNCTION
+       bool "Enable optimized RISC-V specific string function"
+       default n
+       depends on ARCH_TOOLCHAIN_GNU
+       select RISCV_MEMCPY
+       select RISCV_MEMSET
+       select RISCV_STRCMP
+
 config RISCV_MEMCPY
        bool "Enable optimized memcpy() for RISC-V"
        select LIBC_ARCH_MEMCPY
diff --git a/libs/libc/machine/xtensa/Kconfig b/libs/libc/machine/xtensa/Kconfig
index b30ba5608d..7ade4f47b8 100644
--- a/libs/libc/machine/xtensa/Kconfig
+++ b/libs/libc/machine/xtensa/Kconfig
@@ -3,6 +3,17 @@
 # see the file kconfig-language.txt in the NuttX tools repository.
 #
 
+config XTENSA_STRING_FUNCTION
+       bool "Enable optimized XTENSA specific string function"
+       default n
+       select XTENSA_MEMCPY
+       select XTENSA_MEMMOVE
+       select XTENSA_MEMSET
+       select XTENSA_STRCMP
+       select XTENSA_STRCPY
+       select XTENSA_STRLEN
+       select XTENSA_STRNCPY
+
 config XTENSA_MEMCPY
        bool "Enable optimized memcpy() for XTENSA"
        select LIBC_ARCH_MEMCPY

Reply via email to