From 6d314dc6d801368d1615a2e60dd1218fc72096f5 Mon Sep 17 00:00:00 2001 From: Keith Packard Date: Mon, 19 May 2025 16:19:09 -0700 Subject: [PATCH 1/3] arch/x86: Support picolibc with zefi Disable the default startup file with -nostartfiles. Signed-off-by: Keith Packard --- arch/x86/zefi/zefi.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/x86/zefi/zefi.py b/arch/x86/zefi/zefi.py index 2f9c3482bb4c6..b98419f8a49e3 100755 --- a/arch/x86/zefi/zefi.py +++ b/arch/x86/zefi/zefi.py @@ -117,7 +117,7 @@ def build_elf(elf_file, include_dirs): includes.extend(["-I", include_dir]) cmd = ([args.compiler, "-shared", "-Wall", "-Werror", "-I."] + includes + ["-fno-stack-protector", "-fpic", "-mno-red-zone", "-fshort-wchar", - "-Wl,-nostdlib", "-T", ldscript, "-o", "zefi.elf", cfile]) + "-Wl,-nostdlib", "-nostartfiles", "-T", ldscript, "-o", "zefi.elf", cfile]) verbose(" ".join(cmd)) subprocess.run(cmd, check = True) From 0d7c0d86246c914a54fcfb392f85799a29779daa Mon Sep 17 00:00:00 2001 From: Keith Packard Date: Mon, 19 May 2025 09:36:17 -0700 Subject: [PATCH 2/3] modules/cmsis-dsp: Don't use Zephyr stdint.h Zephyr replaces the toolchain version of stdint.h to define uint32_t and int32_t as int rather than long. This breaks the ARM MVE intrinics which require uint32_t to be defined as unsigned long. Define 'ZEPHYR_USE_TOOLCHAIN_STDINT_H_' as that causes zephyr_stdint.h to be skipped, ensuring that the normal stdint.h types are used instead. Signed-off-by: Keith Packard --- modules/cmsis-dsp/CMakeLists.txt | 3 +++ 1 file changed, 3 insertions(+) diff --git a/modules/cmsis-dsp/CMakeLists.txt b/modules/cmsis-dsp/CMakeLists.txt index 2a0924cc25cc4..8332ad2006f99 100644 --- a/modules/cmsis-dsp/CMakeLists.txt +++ b/modules/cmsis-dsp/CMakeLists.txt @@ -19,6 +19,9 @@ if(CONFIG_CMSIS_DSP) ${cmsis_glue_path}/CMSIS/Core/Include ) + # Define ZEPHYR_INCLUDE_TOOLCHAIN_STDINT_H_ to avoid using Zephyr's stdint.h + zephyr_library_compile_definitions(ZEPHYR_INCLUDE_TOOLCHAIN_STDINT_H_) + # Global Feature Definitions zephyr_library_compile_definitions_ifdef(CONFIG_CMSIS_DSP_NEON ARM_MATH_NEON) zephyr_library_compile_definitions_ifdef(CONFIG_CMSIS_DSP_NEON_EXPERIMENTAL ARM_MATH_NEON_EXPERIMENTAL) From d64055de0a4539e8d062b775ff3aced01011c792 Mon Sep 17 00:00:00 2001 From: Anas Nashif Date: Mon, 12 May 2025 10:08:48 -0400 Subject: [PATCH 3/3] tests: c_lib: exclude rx arch Many tests failing for RX, exclude those until the arch stablizes. See #89839 Signed-off-by: Anas Nashif --- tests/lib/c_lib/common/testcase.yaml | 3 +++ tests/lib/c_lib/thrd/testcase.yaml | 3 +++ tests/lib/cpp/libcxx/testcase.yaml | 4 ++++ 3 files changed, 10 insertions(+) diff --git a/tests/lib/c_lib/common/testcase.yaml b/tests/lib/c_lib/common/testcase.yaml index 4d184b9536f5f..4fb1e73538ea8 100644 --- a/tests/lib/c_lib/common/testcase.yaml +++ b/tests/lib/c_lib/common/testcase.yaml @@ -2,6 +2,9 @@ common: tags: - clib ignore_faults: true + arch_exclude: + # see #89839 + - rx integration_platforms: - mps2/an385 tests: diff --git a/tests/lib/c_lib/thrd/testcase.yaml b/tests/lib/c_lib/thrd/testcase.yaml index d236ed70445dc..acc406d08c622 100644 --- a/tests/lib/c_lib/thrd/testcase.yaml +++ b/tests/lib/c_lib/thrd/testcase.yaml @@ -10,6 +10,9 @@ common: - arch - simulation filter: not CONFIG_NATIVE_APPLICATION + arch_exclude: + # see #89839 + - rx tests: libraries.libc.c11_threads.minimal: tags: minimal_libc diff --git a/tests/lib/cpp/libcxx/testcase.yaml b/tests/lib/cpp/libcxx/testcase.yaml index 566a0d689d3c1..37fa4ef3d5de5 100644 --- a/tests/lib/cpp/libcxx/testcase.yaml +++ b/tests/lib/cpp/libcxx/testcase.yaml @@ -1,3 +1,7 @@ +common: + arch_exclude: + # see #89839 + - rx tests: cpp.libcxx.glibcxx.newlib: filter: TOOLCHAIN_HAS_NEWLIB == 1